从数组打字稿中删除项目
Remove item from Array typescript
我陷入了困境。
我有一个数组
arr: [
{
"a": "1"
},
{
"b": "4"
},
{
"c": "6"
},
{
"d": "9"
}
]
和一个数组
[a,c]
我希望输出一个数组,每个数组只有 a 和 c。有人可以建议一下吗。
期望的输出
arr: [
{
"a": "1"
},
{
"c": "6"
}
]
我认为你必须这样做
let arr1 = [
{
"a": "1"
},
{
"b": "4"
},
{
"c": "6"
},
{
"d": "9"
}
];
let arr2 = ["a","c"];
let result = []
for(let obj of arr1){
for(let key of arr2){
if(obj.hasOwnProperty(key)){
result.push(obj);
break;
}
}
}
alert(JSON.stringify(result));
您必须对 arr1
应用过滤器并检查 arr1
的密钥是否在 arr2
中,例如:
let arr1 = [
{
a: '1'
},
{
b: '4'
},
{
c: '6'
},
{
d: '9'
}
];
let arr2 = ['a', 'c'];
let result = arr1.filter(item => arr2.includes(Object.keys(item)[0]));
alert(JSON.stringify(result));
我陷入了困境。 我有一个数组
arr: [
{
"a": "1"
},
{
"b": "4"
},
{
"c": "6"
},
{
"d": "9"
}
]
和一个数组
[a,c]
我希望输出一个数组,每个数组只有 a 和 c。有人可以建议一下吗。
期望的输出
arr: [
{
"a": "1"
},
{
"c": "6"
}
]
我认为你必须这样做
let arr1 = [
{
"a": "1"
},
{
"b": "4"
},
{
"c": "6"
},
{
"d": "9"
}
];
let arr2 = ["a","c"];
let result = []
for(let obj of arr1){
for(let key of arr2){
if(obj.hasOwnProperty(key)){
result.push(obj);
break;
}
}
}
alert(JSON.stringify(result));
您必须对 arr1
应用过滤器并检查 arr1
的密钥是否在 arr2
中,例如:
let arr1 = [
{
a: '1'
},
{
b: '4'
},
{
c: '6'
},
{
d: '9'
}
];
let arr2 = ['a', 'c'];
let result = arr1.filter(item => arr2.includes(Object.keys(item)[0]));
alert(JSON.stringify(result));