JavaScript for循环的问题

 var arr = [];    for (var i = 0; i < 3; i++) {
      arr.push(results[i].data);
      console.log(arr);
    }

上面的循环, 打印出来的 结果不是
【1】
【1,2】
【1,2,3】
而是
【1,2,3】
【1,2,3】
【1,2,3】

这个是什么原理。 不是同步的吗
(代码运行于微信小程序)

打印出来是这样的,

https://img1.mukewang.com/5be927230001914b06450069.jpg

但是一展开,却全都一样

https://img2.mukewang.com/5be9273100010a0e03530250.jpg

www说
浏览 486回答 1
1回答

德玛西亚99

arr是数组,打印时调用的实际是arr的引用,所以每次打印都会相同(同一个引用)。如果想打印你想要的结果,可以先把arr转成字符串arr.toString()arr.join("")都可以
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript