①splice
1 | var ary = [1,2,3,4]; |
②length=0
1 | var ary = [1,2,3,4]; |
这种方式很有意思,其它语言如Java,其数组的length是只读的,不能被赋值。而JS中则可以。
③赋值为[]
1 | var ary = [1,2,3,4]; |
方式2 保留了数组其它属性,方式3 则未保留。很多人认为方式2的效率很高些,因为仅仅是给length重新赋值了,而方式3则重新建立个对象。经 测试 恰恰是方式3的效率高。测试代码:1
2
3
4
5
6
7
8var a=[];
for(var i=0;i<1000000;i++){
a.push(i);
}
var start=new Date();
a=[];
var end=new Date();
alert(end-start);
可以多试几个浏览器,结果是方式3更快一点点。