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

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

方法一:splice

  1. 输出 [],空数组

方法二:array.length=0

  1. 输出 [],空数组

方法三:array赋值为[]


对比

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

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

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

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

  • 代码说明

  1. var foo = [1,3];
  2. var bar = [1,3];
  3. var foo2 = foo;
  4. var bar2 = bar;
  5. foo = [];
  6. bar.length = 0;
  7. console.log(foo,bar,foo2,bar2);
  8. //[] [] [1,3] []

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