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性能较差。


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

查看所有标签

猜你喜欢:

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

WWW信息体系结构(影印版第2版)

WWW信息体系结构(影印版第2版)

Louis Rosenfeld / 清华大学出版社 / 2003-6 / 49.8

如今的网站和内联网已经变得比以前越来越大,越来越有价值,而且越来越复杂,同时其用户也变得更忙,也更加不能容忍错误的发生。数目庞大的信息、快速的变化、新兴的技术和公司策略是设计师、信息体系结构构建师和网站管理员必须面对的事情,而这些已经让某些网让看起来像是个快速增长却规划很差的城市——到处都是路,却无法导航。规划精良的信息体系结构当前正是最关键性的。 本书介绍的是如何使用美学和机械学的理念创建......一起来看看 《WWW信息体系结构(影印版第2版)》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具