JavaScript如何清空数组

刚刚在v2ex看到个文章是问怎么清空JS数组的js如何清空数组

我的第一反应就是array = [];

感觉好简单,但是看到第一条的答案是array.length = 0;

感觉就不太一样了,赶快查一下,结果查到了这个Difference between Array.length = 0 and Array =[]?

array = []是新建了一个空的数组,然后将原来数组的引用指向了这个新的空数组,但是原来数组的内容并没有删除,那些数据还在原来引用的内容依然存在。

array.length = 0才是真正修改了这个数据,将数据清空,所有对原数组的引用都做了修改。

我好天真啊,之前写错了多少代码啊。好吧,这样子这么说可能没有说服力,贴个代码执行结果的截图吧。

请输入图片描述

发表新评论