JavaScript中清空数组的三种方式

发布时间 - 2026-01-11 00:18:30    点击率:

方式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 = []; // 赋值为一个空数组以达到清空原数组 

Ext库Ext.CompositeElementLite类的 clear 方法使用这种方式清空。

方式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); 

测试结果:

  IE6 IE7 IE8 IE9 Firefox Safari Chrome
a.length=0 94 29 14 1 4 3 1
a=[] 0 0 0 0 0 0 0

以上结果可看到:方式3更快,效率更高。

从测试结果上看如果不保留原数组的其它属性Ext采用的方式更值得推荐。

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


# javascript  # 清空  # 数组  # js删除数组元素、清空数组的简单方法(必看)  # JavaScript中清空数组的三种方法分享  # javascript 删除数组元素和清空数组的简单方法  # JavaScript清空数组元素的两种方法简单比较  # 怎么清空javascript数组  # JavaScript中清空数组的方法总结  # js利用数组length属性清空和截短数组的小例子  # JavaScript中清空数组的几种方法  # JavaScript清空数组的四种方法  # JavaScript数组清空常用的3种方式总结  # 值为  # 空了  # 很多人  # 很高  # 更高  # 仅仅是  # 上看  # 更快  # 报错  # 则可  # 留了  # 中会  # 很有意思  # 库中  # 更值得  # 以达到  # 效率高  # Ext  # class 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  Laravel怎么上传文件_Laravel图片上传及存储配置  如何确保FTP站点访问权限与数据传输安全?  如何快速生成专业多端适配建站电话?  如何在阿里云ECS服务器部署织梦CMS网站?  如何在景安云服务器上绑定域名并配置虚拟主机?  什么是javascript作用域_全局和局部作用域有什么区别?  jQuery validate插件功能与用法详解  PythonWeb开发入门教程_Flask快速构建Web应用  Android自定义控件实现温度旋转按钮效果  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  如何快速生成橙子建站落地页链接?  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  如何在云主机快速搭建网站站点?  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  如何用PHP快速搭建CMS系统?  php json中文编码为null的解决办法  Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置  如何在云指建站中生成FTP站点?  如何快速搭建高效可靠的建站解决方案?  Laravel如何自定义错误页面(404, 500)?(代码示例)  lovemo网页版地址 lovemo官网手机登录  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  如何快速查询域名建站关键信息?  Laravel如何实现API版本控制_Laravel版本化API设计方案  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  移动端脚本框架Hammer.js  如何基于PHP生成高效IDC网络公司建站源码?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  JavaScript实现Fly Bird小游戏  Laravel怎么调用外部API_Laravel Http Client客户端使用  Android Socket接口实现即时通讯实例代码  如何在万网利用已有域名快速建站?  java获取注册ip实例  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  活动邀请函制作网站有哪些,活动邀请函文案?  香港服务器如何优化才能显著提升网站加载速度?  高防服务器租用指南:配置选择与快速部署攻略  Laravel怎么在Controller之外的地方验证数据  如何构建满足综合性能需求的优质建站方案?  如何快速启动建站代理加盟业务?