收藏
回答

请问这是什么情况?

直接上代码:

打印结果:

请注意一下两行打印结果中的users这个字段,为什么最后一行会打印不出users的内容?


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

2 个回答

  • ?
    ?
    09-09

    你取值比你赋值快。

    09-09
    有用
    回复
  • stop eating
    stop eating
    09-08

    就这么点代码,看不出来什么,只能猜测是异步赋值

    09-08
    有用
    回复 4
    • 狂狼
      狂狼
      09-08
      问题是onload里面只有这么几行代码...
      异步赋值讲不通吧,app.globalData里面users的值都已经打印出来了,难道存在第三行比第二行代码先执行的可能性吗
      09-08
      回复
    • stop eating
      stop eating
      09-08回复狂狼
      我也能出来这个效果了,onLoad只有这么几行代码
      09-08
      回复
    • 狂狼
      狂狼
      09-08
      多谢提醒,我的users是在app.js里赋值的,我对异步的代码做了一下调整,现在没有这种情况了。但是我对问题中第二行和第三行的打印内容还是有疑问,异步代码只会导致app.globalData.users没有及时赋值,不清楚为什么console.log(app.globalData)的打印结果看到已经赋值了,最后取出来的users却是个空的
      09-08
      回复
    • stop eating
      stop eating
      09-09回复狂狼
      https://developers.weixin.qq.com/s/7xwYCdmF75kb  代码片段,自己琢磨吧,没多余代码
      09-09
      回复
登录 后发表内容
问题标签