JS-关于清空数组的三种方法讨论

前端之家收集整理的这篇文章主要介绍了JS-关于清空数组的三种方法讨论前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

方法一:splice

输出 [],空数组

方法二:array.length=0

输出 [],空数组

方法三:array赋值为[]


对比

  • splice方法产生的结果性质同ary.length=0

  • ary.length=0保留了数组其他属性,但是如果数组有副本(bry=ary),则副本内容也被清空,即使之前对副本内容进行了修改增删,同样会被清空

  • ary=[]分配一个新的数组变量,不会对其他副本产生影响,但是原数组会留在内存中,如果没有引用则会等待垃圾回收,这样可能会导致内存泄露

  • 进过测试对比,方法三比方法二执行速度更快,效率更高,但是从内存性能来看方法二比较稳妥,具体是用哪个还需要再探究

  • 代码说明

var foo = [1,3];
var bar = [1,3];
var foo2 = foo;
var bar2 = bar;
foo = [];
bar.length = 0;
console.log(foo,bar,foo2,bar2);
//[] [] [1,3] []

猜你在找的程序笔记相关文章