js 清空数组的方法

1、直接赋值空数组

javascript 复制代码
let array = [1, 2, 3, 4, 5];
array = [];

这种方法并不推荐,如下图所示:

虽然a数组确实变为了空数组,但这种方法只是修改了a的指向,把a指向一个新的空数组,然而[1,2,3,4,5]这个数组并没有被清除,依然保存在内存中。

2、设置长度为0

javascript 复制代码
let array = [1, 2, 3, 4, 5];
array.length = 0;

这种方法简单高效,最值得推荐

可以真正做到将数组清除,且写法简洁

3、使用pop()循环删除

javascript 复制代码
let array = [1, 2, 3, 4, 5];
while(array.length > 0) {
    array.pop();
}

4、使用filter

和方法1差不多,筛选出一个空数组然后赋值给原数组,但并没有清除原数组

javascript 复制代码
let array = [1, 2, 3, 4, 5];
array = array.filter(() => false);
// array 现在是 []

5、splice()方法

javascript 复制代码
let array = [1, 2, 3, 4, 5];
array.splice(0, array.length );
相关推荐
一枚前端小能手4 分钟前
「周更第7期」实用JS库推荐:Vite
前端·javascript·vite
知识分享小能手1 小时前
微信小程序入门学习教程,从入门到精通,电影之家小程序项目知识点详解 (17)
前端·javascript·学习·微信小程序·小程序·前端框架·vue
Dever1 小时前
记一次 CORS 深水坑:开启 withCredentials 后Response headers 只剩 content-type
前端·javascript
Hilaku1 小时前
为什么我开始减少逛技术社区,而是去读非技术的书?
前端·javascript·面试
猪哥帅过吴彦祖1 小时前
第 8 篇:更广阔的世界 - 加载 3D 模型
前端·javascript·webgl
Asort2 小时前
JavaScript设计模式(十二)——代理模式 (Proxy)
前端·javascript·设计模式
tangdou3690986552 小时前
可怕!我的Nodejs系统因为日志打印了Error 对象就崩溃了😱 Node.js System Crashed Because of Logging
前端·javascript·后端
Mintopia2 小时前
🎨 数据增强技术在 AIGC 训练中的应用:提升 Web 生成的多样性
前端·javascript·aigc
xiaohua0708day2 小时前
关于解决js中MediaRecorder录制的webm视频没有进度条的问题
javascript·音视频
程序铺子2 小时前
如何使用 npm 安装 sqlite3 和 canvas 这些包
javascript·npm·node.js