清空数组
list
的数组,然后通过 list = []
语句来清空数组。该方法简单易懂,但效率不高。实际上,这种方式是通过创建一个新的空数组并将其引用赋值给 list
变量来实现的。这就意味着旧的数组内容并没有真正被删除,如果有其他变量仍然引用这个数组,那么这部分内容将会保留在内存中,可能导致内存泄露。
在这种方法中,我们通过设置 list.length = 0
来清空数组。这里并没有创建新的数组,而是直接修改了原数组的长度属性,使其变为0,从而达到清空数组的目的。这种方式更为高效,也会释放掉原数组所占用的内存空间。
另外一种相似的是splice()
方法
splice()
并传入了两个参数。第一个参数 0
是开始删除的元素的索引,第二个参数 list.length
是删除的元素数量。这样,splice()
方法就会从头开始删除数组中的所有元素
然而,需要注意的是,如果你复制了一个数组(A 和 Copy-A),如果你用list.length = 0
清空了它的内容,复制的数组也会随之清空它的内容。(splice()类似)
foo
和 bar
,我们可以清晰地看到 foo2
和 bar2
也随之发生了改变。总结来说,选择哪种清空数组的方法应根据具体情况和需求来定,同时也要考虑到可能对内存的影响。