JavaScript如何快速高性能清空删除Array数组中的所有元素,并保持引用

栏目: JavaScript · 发布时间: 6年前

内容简介:有非常多的方法来清空一个已经存在的数组:将空数组直接赋值给变量 arr,新数组与原无引用关系。对新数组的操作不会影响原数组。

有非常多的方法来清空一个已经存在的数组:

var arr = [1,2,3,4];

方法1: 直接赋值

arr = [];

将空数组直接赋值给变量 arr,新数组与原无引用关系。对新数组的操作不会影响原数组。

方法2: 设置 length

arr.length = 0

直接将数组长度设置为0,此方法并不是在所有的JS引擎中都能工作,并且,当"strict mode"严格模式时,因 arr.length 是只读的,此方法将不起作用。

方法3: splice

arr.splice(0, arr.length)

这种方法会返回删除的所有元素,并形一个新的数组,不过对性能没有影响,并将保持对数组的引用。

方法4: pop

while(arr.length > 0) {
    arr.pop();
}

性能较差。

方法5: shift

while (arr.length > 0) {
  arr.shift();
}

这是性能最差的一种方法。

性能比较:

根据性能比较 http://jsben.ch/#/hyj65

方法 2, 3 性能差不多,非常快,并且可保持对数组的引用。方法 4, 5性能较差。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

高效算法

高效算法

[法] Christoph Dürr、[法] Jill-Jênn Vie / 史世强 / 人民邮电出版社 / 2018-5 / 55.00元

本书旨在探讨如何优化算法效率,详细阐述了经典算法和特殊算法的实现、应用技巧和复杂度验证过程,内容由浅入深,能帮助读者快速掌握复杂度适当、正确率高的高效编程方法以及自检、自测技巧,是参加ACM/ICPC、Google Code Jam 等国际编程竞赛、备战编程考试、提高编程效率、优化编程方法的参考书目。一起来看看 《高效算法》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

html转js在线工具
html转js在线工具

html转js在线工具