我有很多物件,例如
let arr = [
{name: "name1" , surname: "surname1", age: "22"},
{name: "name2" , surname: "surname2", age: "23"},
{name: "name3" , surname: "surname3", age: "24"},
]
但我需要過濾它所以它會
arr = [
{name: "name1" , surname: "surname1"},
{name: "name2" , surname: "surname2"},
{name: "name3" , surname: "surname3"},
]
我該怎么做?
uj5u.com熱心網友回復:
使用Array#map:
const arr = [ {name: "name1" , surname: "surname1", age: "22"}, {name: "name2" , surname: "surname2", age: "23"}, {name: "name3" , surname: "surname3", age: "24"} ];
const res = arr.map(({ name, surname }) => ({ name, surname }));
console.log(res)
uj5u.com熱心網友回復:
鑒于您要過濾多個屬性,您可以將要洗掉的屬性存盤在一個陣列中,然后在maping 和洗掉屬性時回圈遍歷它:
const propertiesToFilter = ['age']
let arr = [
{name: "name1" , surname: "surname1", age: "22"},
{name: "name2" , surname: "surname2", age: "23"},
{name: "name3" , surname: "surname3", age: "24"},
]
const res = arr.map(e => (propertiesToFilter.forEach(f => delete e[f]), e))
console.log(res)
uj5u.com熱心網友回復:
使用 simplefor-of與物件解構
for(person of arr){
const {name, surname} = person;
res.push({name, surname})
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/362152.html
標籤:javascript 数组
