前言
四月份的面试历历在目......我突然顿悟面试也不错,因为你可以遇到众多优秀的面试官,还有许多你曾不屑一顾的细节,一场场面试会驱动你拾起或遗落或模糊或新鲜的知识,然后你就会复盘、思考与总结,从而壮大自己。你不知道面试官会问你什么,这很考验一个人的随机应变能力、语言组织能力以及知识储备量等。
我依稀记得有位面试官问我:如何清空数组?我当时愣住了,好一会儿才反应过来:哦,您是问如何删除一个数组吗?面试官说:嗯,对。纵然如此,我也只答出了个 arr=[]。
于是,本文应运而生。
清空数组的方法
1. 赋值空数组
let arr1 = [1, 2, 3, 'a', 'b', 'c']
arr1 = []
console.log(arr1)// []
2. 令数组长度为 0
let arr2 = [1, 2, 3, 'a', 'b', 'c']
arr2.length = 0
console.log(arr2)// []
3. for 循环 + pop()
let arr3 = [1, 2, 3, 'a', 'b', 'c']
for (let i = 0; i < arr3.length; i++) {
arr3.pop()
i--
};
console.log(arr3);// []
4. for 循环 + shift()
let arr4 = [1, 2, 3, 'a', 'b', 'c']
for (let i = 0; i < arr4.length; i++) {
arr4.shift()
i--
};
console.log(arr4);// []
5. for 循环 + splice()
let arr5 = [1, 2, 3, 'a', 'b', 'c']
for (let i = 0; i < arr5.length; i++) {
arr5.splice(0, 1)
i--
};
console.log(arr5);// []
6. while 循环 + pop()
let arr6 = [1, 2, 3, 'a', 'b', 'c']
while (arr6.length) {
arr6.pop()
}
console.log(arr6);// []
7. while 循环 + shift()
let arr7 = [1, 2, 3, 'a', 'b', 'c']
while (arr7.length) {
arr7.shift()
}
console.log(arr7);// []
8. while 循环 + splice()
let arr8 = [1, 2, 3, 'a', 'b', 'c']
while (arr8.length) {
arr8.splice(0, 1)
}
console.log(arr8);// []
9. splice()
let arr9 = [1, 2, 3, 'a', 'b', 'c']
arr9.splice(0)
// arr9.splice(0, arr9.length)
console.log(arr9);// []
结语
你看,当你细细琢磨之后,思路就明朗许多。这不就是咱们平时司空见惯的东西吗?哎,你咋就只知道 arr=[]呢?由此可见,总结至关重要,尤其是看起来很简单的问题,亦值得你去一探究竟。