从JavaScript 数组中删除元素的方式
1、内置 array.filter()
自身没有改变,返回新数组重新赋值。
条件删除。retrun 回来条件为true时对应的值
let numbersOneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
numbersOneToTen = numbersOneToTen.filter(num => num % 2 === 0)// numbersOneToTen = [ 2, 4, 6, 8, 10 ]
2、内置array.slice(optionalStart, optionalEnd)
自身没有改变,返回新数组重新赋值。
optionalStart 和 optionalEnd 返回截取的部分。索引是从零开始的
let numbersOneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
numbersOneToTen = numbersOneToTen.slice(3, 8);//numbersOneToTen = [ 4, 5, 6, 7, 8 ]
3、内置array.splice(requiredStart, optionalDeleteCount)
自身被删除。返回的是被删除的项目
requiredStart 从零开始的索引
optionalDeleteCount 要删除的项目数的数值 (默认到结束)
let numbersOneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
let getNumbersOneToTen = numbersOneToTen.splice(4);//numbersOneToTen = [1, 2, 3, 4]
//getNumbersOneToTen = [5, 6, 7, 8, 9, 10]
numbersOneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
getNumbersOneToTen.splice(4,3);//numbersOneToTen = [1, 2, 3, 4, 8, 9, 10] //getNumbersOneToTen = [5, 6, 7]
4、内置array.pop()
自身删除。
从数组中删除最后一个元素
let numbersOneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
numbersOneToTen.pop();//numbersOneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9]
//getNumbersOneToTen = 10
同理删除第一个元素 array.shift()
5、重新分配到空数组
let numbersOneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
let numbersOneToTens = [];
通过循环数组...
numbersOneToTens.push(item)