簡體   English   中英

如何在JavaScript中以數組形式返回對象的特定屬性

[英]How to return specific properties of objects in form of array in javascript

我有一個函數,該函數需要一個狗對象數組並返回特定屬性的數組

The code that I have tried
function Owner(dogs) {
     dogs.map(value => {
     if (value.breed === 'GermanShepherd') {
         return value.owner;    
 }
}

一種選擇是使用reduce()並檢查品種是否與search變量相同(如果相同reduce() ,請使用concat()添加到累加器中。

 let arr = [{"name":"Beatrice","breed":"Lurcher","owner":"Tom"},{"name":"Max","breed":"GermanShepherd","owner":"Malcolm"},{"name":"Poppy","breed":"GermanShepherd","owner":"Vikram"}]; let search = 'GermanShepherd'; let result = arr.reduce((c, v) => v.breed === search ? c.concat(v.owner) : c, []); console.log(result); 


您還可以使用filtermap組合。

 let arr = [{"name":"Beatrice","breed":"Lurcher","owner":"Tom"},{"name":"Max","breed":"GermanShepherd","owner":"Malcolm"},{"name":"Poppy","breed":"GermanShepherd","owner":"Vikram"}] let search = 'GermanShepherd'; let result = arr.filter(o => o.breed === search).map(o => o.owner); console.log(result); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM