JavaScript中清空数组的三种方法分享

 更新时间:2011年04月07日 23:31:24   作者:  
JavaScript中清空数组的三种方法分享,需要的朋友可以参考下。
方式1,splice
复制代码 代码如下:

var ary = [1,2,3,4];
ary.splice(0,ary.length);
console.log(ary); // 输出 [],空数组,即被清空了

方式2,length赋值为0
这种方式很有意思,其它语言如Java,其数组的length是只读的,不能被赋值。如
复制代码 代码如下:

int[] ary = {1,2,3,4};
ary.length = 0;

Java中会报错,编译通不过。而JS中则可以,且将数组清空了,
复制代码 代码如下:

var ary = [1,2,3,4];
ary.length = 0;
console.log(ary); // 输出 [],空数组,即被清空了

目前 Prototype中数组的 clear 和mootools库中数组的 empty 使用这种方式清空数组。  
方式3,赋值为[]
复制代码 代码如下:

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

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

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更快,效率更高。因此如果不保留原数组的其它属性Ext采用的方式更值得推荐。

相关文章

  • js 弹出菜单/窗口效果

    js 弹出菜单/窗口效果

    想象一下,你把一个重要内容放在一个弹出窗口,又不聚集到这个窗口。让使用屏幕阅读器的同学情何以堪,只有当他们 tab 到这页面结束,还继续 tab,才可能找到这个弹窗
    2011-10-10
  • 微信小程序BindTap快速连续点击目标页面跳转多次问题处理

    微信小程序BindTap快速连续点击目标页面跳转多次问题处理

    这篇文章主要介绍了微信小程序BindTap快速连续点击目标页面跳转多次问题处理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • npm scripts 使用指南详解

    npm scripts 使用指南详解

    这篇文章主要介绍了npm scripts 使用指南详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定

    KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定

    Knockout是一个以数据模型(data model)为基础的能够帮助你创建富文本,响应显示和编辑用户界面的JavaScript类库。这篇文章介绍了KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定的相关知识,感兴趣的朋友一起看看吧
    2016-10-10
  • js+css实现的简单易用兼容好的分页

    js+css实现的简单易用兼容好的分页

    使用html、js、css实现的简单易用兼容好的分页,具体的实现如下,感兴趣的朋友可以参考下
    2013-12-12
  • JavaScript实现生成GUID(全局统一标识符)

    JavaScript实现生成GUID(全局统一标识符)

    这篇文章主要介绍了JavaScript实现生成GUID(全局统一标识符),本文写成了一个GUID生成类,使用也非常方便,需要的朋友可以参考下
    2014-09-09
  • 开启Javascript中apply、call、bind的用法之旅模式

    开启Javascript中apply、call、bind的用法之旅模式

    在Javascript中,Function是一种对象。Function对象中的this指向决定于函数被调用的方式,使用apply,call 与 bind 均可以改变函数对象中this的指向。
    2015-10-10
  • 借用Google的Javascript API Loader来加速你的网站

    借用Google的Javascript API Loader来加速你的网站

    加速页面加载速度有一个方法就是把CSS和JS文件放到另外一个单独的服务器上,这样在访问量比较大的情况下可以分担主服务器的压力
    2009-01-01
  • iframe实用操作锦集

    iframe实用操作锦集

    这篇文章主要介绍了有关iframe的实用操作,包括高度、传递数据等等,感兴趣的朋友可以参考下
    2014-04-04
  • JavaScript中遍历的十种方法总结

    JavaScript中遍历的十种方法总结

    这篇文章主要给大家介绍了关于JavaScript中遍历的十种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12

最新评论