收藏
回答

小程序的变量赋值机制是怎样的?

onLoad() {
    var that = this
    wx.cloud.database().collection('post').get({
      success(res){
        console.log('从数据库获取到帖子列表信息',res)


        // 格式化時間
        var list = res.data
        for(var i in list) {
          list[i].time = util.formatTime(new Date(list[i].time))
        }


        that.setData({
          postList: res.data
        })
      }
    })
  },


这段代码的逻辑是:

1 从数据库中取到帖子的数据

2 for循环去格式化每个帖子的时间

代码可以达到预期

我困惑的是,为什么修改变量list,会导致res.data里的值发生变化?



回答关注问题邀请回答
收藏

2 个回答

  • 拾忆
    拾忆
    2022-09-08

    百度了解下:js浅拷贝和深拷贝

    2022-09-08
    有用 1
    回复 1
    • 蒋昊旻
      蒋昊旻
      2022-09-09
      谢谢
      2022-09-09
      回复
  • 跨商通
    跨商通
    2022-09-09

    随便写个测试脚本去验证一下呗。

    let a = {c:{d:1}}
    let b = a.c
    b.d = 2
    console.log(a)
    
    2022-09-09
    有用
    回复
登录 后发表内容