【Vue】数组打印为空,但展开后是有数据的问题该怎么解决?
需要把百度地图原有的点进行左边转换,转换完保存到数组中打印出来是一个空数组,但展开后可以看到数据,不知道该怎么解决?下面上代码,把转换后的数据保存到list变量中。
var convertor = new BMap.Convertor();convertor.translate(pos, 1, 5, function(data){
if(data.status === 0) {
list.push(data.points);
}
});
然后打印查看了一下list中的数据,结果显示是一个空数组,但展开后有坐标的,想请问一下大佬们改怎么解决
回答
你点哪个小蓝图标,会出现:Value below was evaluated just now。没展开的值,是不同的,展开后值全是一样的。其原因是在Chrome Console.log()点击展开数组时,会重新去读一遍内存真实的值然后显示,所以展开后都是最终值。
因此,在打印二维数组时,其实如若不展开,他显示的就是当前值,但是点击展开后,会重新去内存读值,所以展开的值,全是最终值,所以看到所有二维数组打印的都是一个值的情况。
解决方法:1、打印之前克隆对象 2. Json.Stringify转换成字符串
console.log()点击的时候会重新读取内存,我也踩过,复习了深拷贝浅拷贝的东西还~~
以上是 【Vue】数组打印为空,但展开后是有数据的问题该怎么解决? 的全部内容, 来源链接: utcz.com/a/76904.html