收藏
回答

为什么数组显示为空,展开数据却又内容呢?

然后我就测试了一个简单的数组

很明显就不一样,为什么呀,求大神解答!!!

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

2 个回答

  • 陈生
    陈生
    2021-06-18

    你可以这么理解,数组是引用类型,当你打印引用类型数据时 由于你赋值过早,所以你看到的为空值,当你展开时,它就赋值了。所以你才能看到值。其实就是异步同步问题。

    解决方案有两个 :

    1.如果你是在回调函数中返回的值,你就在回调中赋值。

    2.如果支持es6写法,可以在主函数头部添加 async 调用当前函数时添加await。

    例:

    async onLoad(){

    let res = await this.getData();//getData函数就是你拿值的函数

    console.log(res);//返回的结果

    }。

    可以百度了解更详细。

    2021-06-18
    有用 3
    回复 1
    • 南离
      南离
      2022-10-31
      大哥牛皮,我怎么没想到
      2022-10-31
      回复
  • 拾忆
    拾忆
    2021-06-17

    异步问题

    2021-06-17
    有用
    回复 3
    • 宝
      2021-06-17
      可以说说怎么处理这种问题嘛
      2021-06-17
      回复
    • 宝
      2021-06-17
      刚刚看贴吧也看到相关问题,也是说异步赋值的问题,但是没给解决方案
      2021-06-17
      回复
    • 拾忆
      拾忆
      2021-06-17回复
      控制台的不用管,JS里的代码可以考虑用async/await。
      2021-06-17
      回复
登录 后发表内容