网站地图    收藏   

主页 > 前端 > javascript >

js 数组清空(删除)方法总结

来源:自学PHP网    时间:2014-09-19 14:47 作者: 阅读:

[导读] 在js中清空数据的方法有很多种,下面我来给各位同学介绍几种清空数据方法,与各种数组清空性能比较,各位朋友可参考。...

清空数组是一个常用的JavaScript的工作,但我常常看到在不正确的方式。很多时候,开发人员将创建一个新的数组,比如下面这样:

赋值为[]

 代码如下 复制代码

myArray = []; //不好的方法

var ary = [1,2,3,4];
ary = []; // 赋值为一个空数组以达到清空原数组

以创建一个空数组来清空它显然不是一个最好的方法,你应该设置数组的length属性为0:

 代码如下 复制代码

myArray.length = 0; // good!

设置length为零清空当前数组,而不是创建另一个空数组!这可以帮助您避免数组的指针问题。如果你用前面的方法:

 

 代码如下 复制代码
A = [1,2,3,4,5]
B = A
A = []
console.log(B) // [1,2,3,4,5],原始数组依然没清空,A只是指向了新的空数组


设置length为0的方法就可以使A和B都清空了

 代码如下 复制代码

var a = [];
for (var i=0; i< 1000000; i++){
    a.push(i);
}
var start = new Date();
//a = [];
a.length = 0;
var end = new Date();
alert(end - start);

保留了数组其它属性,方式3 则未保留。很多人认为方式2的效率很高些,因为仅仅是给length重新赋值了,而方式3则重新建立个对象。经 测试 恰恰是方式3的效率高。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论