使用 arr.pop()删除数组末尾的元素
arr.pop()删除索引值最大的元素,并返回被删除的元素。
js
let arr = [1, 2, 3, 4, 5];
var delElement = arr.pop();
console.log(arr, delElement);let arr = [1, 2, 3, 4, 5];
var delElement = arr.pop();
console.log(arr, delElement);arr.pop()的与 arr.length--的效果一样,但 arr.length--没有返回值;
使用 shift()删除数组的头部元素
shift();删除索引为 0 的元素,并返回删除的元素
js
let arr = [1, 2, 3, 4, 5];
var delElement = unshift();
console.log(arr, delElement);let arr = [1, 2, 3, 4, 5];
var delElement = unshift();
console.log(arr, delElement);使用 splice()方法删除指定数组元素
js
/* 使用splice()方法会影响原数组 */
let man_arr = ["张三", "李四", "王五"];
console.log("");
console.log(man_arr);
console.log(man_arr.splice(1, 2));
console.log(man_arr);/* 使用splice()方法会影响原数组 */
let man_arr = ["张三", "李四", "王五"];
console.log("");
console.log(man_arr);
console.log(man_arr.splice(1, 2));
console.log(man_arr);for...of 遍历中删除元素
js
let list = ["a", "b", "c", "d"];
for (let item of list) {
if (item === "a") {
list.splice(0, 1);
}
console.log(item);
}let list = ["a", "b", "c", "d"];
for (let item of list) {
if (item === "a") {
list.splice(0, 1);
}
console.log(item);
}输出:
a c d
forEach 遍历中删除元素:
js
let list = ["a", "b", "c", "d"];
list.forEach((item, idx) => {
if (item === "a") {
list.splice(0, 1);
}
console.log(item);
});let list = ["a", "b", "c", "d"];
list.forEach((item, idx) => {
if (item === "a") {
list.splice(0, 1);
}
console.log(item);
});输出:
a c d
可以看到,二者表现一致,遍历到a的时候,把a删除,则b会被跳过,增加元素则略为不同。
按照下标一次删除多个指定数组元素
js
按照下标删除单个指定数组元素
js
liang14658fox