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 );
相关推荐
兆子龙13 分钟前
React Native 完全入门:从原理到实战
前端·javascript
SuperEugene15 分钟前
Vite 实战教程:alias/env/proxy 配置 + 打包优化避坑|Vue 工程化必备
前端·javascript·vue.js
兆子龙16 分钟前
一文彻底搞懂 OpenClaw 的架构设计与运行原理(万字长文)
javascript
boooooooom1 小时前
别再用错 ref/reactive!90%程序员踩过的响应式坑,一文根治
javascript·vue.js·面试
德育处主任1 小时前
『NAS』一句话生成网页,在NAS部署UPage
前端·javascript·aigc
张元清1 小时前
Astro 6.0:被 Cloudflare 收购两个月后,这个"静态框架"要重新定义全栈了
前端·javascript·面试
青青家的小灰灰1 小时前
深入理解 async/await:现代异步编程的终极解决方案
前端·javascript·面试
用户5757303346241 小时前
JavaScript 原型继承全解析:从 call/apply 到寄生组合式继承
javascript
wuhen_n2 小时前
动态组件与 keep-alive:如何优化页面切换体验与性能?
前端·javascript·vue.js
wuhen_n2 小时前
插槽的作用域与分发:如何让组件更灵活、可定制?
前端·javascript·vue.js