收藏
回答

for循环问题

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 工具 6.5.3 2.6.2



onLoad: function(options) {
    db.collection('users').where({
        pid: app.globalData.openid
      })
      .get().then(res => {
        console.log(res.data)
        var sons = res.data
        for (var i = 0; i < res.data.length; i++) {
          console.log(i)    //这里i=0
          db.collection('users').where({
              pid: res.data[i]._openid
            })
            .get().then(res => {
              console.log(i)  //这里i=1
              sons[i-1].gsons = res.data
            })
        }
        this.setData({
          sons: sons
        })
        console.log(this.data)
      })
 
  },

为什么第一个i=0,第二个i=1

最后一次编辑于  04-04  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

4 个回答

  • 沃德天·维森陌·拉莫帅🌝
    沃德天·维森陌·拉莫帅🌝
    04-04

    把var换成let试试看

    04-04
    赞同 1
    回复
  • 铭锋科技
    铭锋科技
    04-04

    就是var的问题

    04-04
    赞同 1
    回复
  • 言
    04-04

    真的是var的问题,解决了,谢谢两位

    04-04
    赞同
    回复 1
    • 大兵
      大兵
      04-04

      var定义的好像是全局变量,可以看一下var 和 let 的区别

      04-04
      回复
  • 吴奕群
    吴奕群
    04-09

    看一下var跟let的区别

    04-09
    赞同
    回复