![](/img/trans.png)
[英]javascript return property value from nested array of objects based on condition
[英]Javascript return array from array of objects where property value matches
是否有內置的Javascript函數或庫可以執行以下操作:
const data = [
{ name: 'name1', type: 'type1' },
{ name: 'name2', type: 'type2' },
{ name: 'name3', type: 'type3' },
{ name: 'name4', type: 'type2' },
];
要搜索以下內容並返回type = 'type2'
所有對象
類似於data.findIndex((i) => i.type === 'type2')
但是返回所有匹配項,而不是第一個索引?
謝謝
您正在尋找Array.filter()
:
filter()方法創建一個新數組,其中所有元素都通過了由提供的函數實現的測試。
例:
const data = [ { name: 'name1', type: 'type1' }, { name: 'name2', type: 'type2' }, { name: 'name3', type: 'type3' }, { name: 'name4', type: 'type2' }, ] const result = data.filter(o => o.type === 'type2') console.log(result)
您可以使用filter()
const data = [ { name: 'name1', type: 'type1' }, { name: 'name2', type: 'type2' }, { name: 'name3', type: 'type3' }, { name: 'name4', type: 'type2' }, ]; let res = data.filter(({type}) => type === "type2"); console.log(res)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.