为什么数组显示为空,展开数据却又内容呢?
发布于 6 年前 作者 heping 9200 次浏览 来自 官方Issues

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

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

2 回复

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

解决方案有两个 :

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

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

例:

async onLoad(){

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

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

}。

可以百度了解更详细。

回到顶部