Javascript 从对象数组中打印具有相同值的对象
假设我的当前对象如下所示:Javascript 从对象数组中打印具有相同值的对象,javascript,Javascript,假设我的当前对象如下所示: { "name": 1 "type": 2 "kind": 2 } 我想打印数组中与当前对象(即2)具有相同“类型”的所有对象 [ { "name": 1 "type": 2 "kind": 3 }, { "name": 2 "type": 2 "kind": 1 }, { "name": 2 "type": 1 "kind": 3 } ] 预期产出: [ { "name": 1
{
"name": 1
"type": 2
"kind": 2
}
我想打印数组中与当前对象(即2
)具有相同“类型”的所有对象
[
{
"name": 1
"type": 2
"kind": 3
},
{
"name": 2
"type": 2
"kind": 1
},
{
"name": 2
"type": 1
"kind": 3
}
]
预期产出:
[
{
"name": 1
"type": 2
"kind": 3
},
{
"name": 2
"type": 2
"kind": 1
}
]
使用
Array.prototype.filter()
比如fullArray.filter(element=>element.type==myObject.type)
或者如果您仍在使用ES5fullArray.filter(函数(element){return element.type==myObject.type;})
注意,我不在计算机上,因此无法测试代码。答案是数组:
这里是:使用
array.filter()
方法可以从数组中获取属性具有特定值的对象。像这样使用它:
let arr = [
"name": 1,
"type": 2,
"kind": 3
},
{
"name": 2,
"type": 2,
"kind": 1
},
{
"name": 2,
"type": 1,
"kind": 3
}
];
let filteredArr = arr.filter(item => item.type === 2);
filteredar
将只包含类型为2的对象。
希望这有帮助
let arr = [
"name": 1,
"type": 2,
"kind": 3
},
{
"name": 2,
"type": 2,
"kind": 1
},
{
"name": 2,
"type": 1,
"kind": 3
}
];
let filteredArr = arr.filter(item => item.type === 2);