JS数组对象删除详解(删除数组中指定元素)

一、js删除数组对象元素

let arr = ['a', 'b', 'c'];
arr.splice(1, 1);
console.log(arr);
//输出 ['a', 'c']

通过使用splice方法,可以删除数组中指定位置的元素。splice方法的第一个参数是要删除的元素的起始位置,第二个参数是要删除的元素数量。

在上述代码中,第一个参数为1,表示从数组的第二个位置开始删除,第二个参数为1,表示删除一个元素,所以结果中b被删除。

二、js删除数组对象中的某个属性

let arr = [
    {name: 'Tom', age: 20},
    {name: 'Mike', age: 25},
    {name: 'Lily', age: 18}
];
for(let i = 0; i < arr.length; i++) {
    delete arr[i].age;
}
console.log(arr);
//输出 [{name: 'Tom'}, {name: 'Mike'}, {name: 'Lily'}]

通过使用delete关键字,可以删除对象中的指定属性。

在上述代码中,通过for循环遍历数组,使用delete关键字删除age属性。

三、js删除数组对象中指定属性

let arr = [
    {name: 'Tom', age: 20},
    {name: 'Mike', age: 25},
    {name: 'Lily', age: 18}
];
for(let i = 0; i < arr.length; i++) {
    arr[i] = {
        name: arr[i].name
    }
}
console.log(arr);
//输出 [{name: 'Tom'}, {name: 'Mike'}, {name: 'Lily'}]

通过遍历数组,可以使用对象字面量重新创建一个只包含需要保留属性的新对象,达到删除指定属性的目的。

在上述代码中,通过for循环遍历数组,使用对象字面量创建一个只包含name属性的新对象,替换原来的对象。

四、js删除数组数据

let arr = ['a', 'b', 'c'];
arr.length = 0;
console.log(arr);
//输出 []

通过将数组长度设置为0,可以清空数组中的所有数据。

在上述代码中,设置数组的长度为0,实现删除数组数据的效果。

五、js删除数组对象的属性

let obj = {name: 'Tom', age: 20};
delete obj.age;
console.log(obj);
//输出 {name: 'Tom'}

跟第二个小标题相同,通过使用delete关键字,可以删除对象中的指定属性。

在上述代码中,使用delete关键字删除age属性,达到删除对象属性的效果。

六、js数组删除指定对象

let arr = [
    {name: 'Tom', age: 20},
    {name: 'Mike', age: 25},
    {name: 'Lily', age: 18}
];
let index = arr.findIndex(item => item.name === 'Mike');
arr.splice(index, 1);
console.log(arr);
//输出 [{name: 'Tom', age: 20}, {name: 'Lily', age: 18}]

通过使用findIndex和splice方法,可以删除数组中指定对象。

在上述代码中,使用findIndex方法找到name等于Mike的对象的索引位置,然后使用splice方法删除该对象。

七、js删除数组对象最后一项

let arr = [
    {name: 'Tom', age: 20},
    {name: 'Mike', age: 25},
    {name: 'Lily', age: 18}
];
arr.pop();
console.log(arr);
//输出 [{name: 'Tom', age: 20}, {name: 'Mike', age: 25}]

使用pop方法可以删除数组对象的最后一项。

在上述代码中,使用pop方法删除数组的最后一项。

八、js删除数组对象中一条对象

let arr = [
    {name: 'Tom', age: 20},
    {name: 'Mike', age: 25},
    {name: 'Lily', age: 18}
];
let newarr = arr.filter(item => item.name !== 'Mike');
console.log(newarr);
//输出 [{name: 'Tom', age: 20}, {name: 'Lily', age: 18}]

通过使用filter方法,可以删除数组对象中的一条对象。

在上述代码中,使用filter方法返回不包含name等于Mike的对象的新数组。

九、js删除数组对象中某一条数据

let arr = [
    {name: 'Tom', age: 20},
    {name: 'Mike', age: 25},
    {name: 'Lily', age: 18}
];
let index = arr.findIndex(item => item.name === 'Mike');
arr[index].age = undefined;
console.log(arr);
//输出 [{name: 'Tom', age: 20}, {name: 'Mike'}, {name: 'Lily', age: 18}]

通过将属性设置为undefined,可以删除数组对象中的某一条数据。

在上述代码中,使用findIndex方法找到name等于Mike的对象的索引位置,然后将age属性设置为undefined,达到删除该属性的效果。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平