for循环问题

发布于 6 年前作者 jing3114919 次浏览最后编辑 6 年前来自 ask
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

4 回复
tangming
tangming1 楼6 年前

就是var的问题

mxiong
mxiong2 楼6 年前

看一下var跟let的区别

yang46
yang463 楼6 年前

把var换成let试试看

qzhao
qzhao4 楼4 年前

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