2017-07-26 107 views
0

有一个对象数组,如下所示。只需使用VatCode propery从下面的对象数组中创建一个数组,而不需要通过'for循环'。 这里的结果应该是
resultArray = [1,15,25]使用对象数组的特定属性创建数组

"Data": [ 
    { 
     "Id": 1, 
     "VatCode": 1, 
     "Name": "Ingen mva.",    
     "VatAccount": { 
      "ID": 3, 
      "AccountNo": "3190", 
      "Name": "Misc Items Income" 
     }    
    }, 
    { 
     "Id": 2, 
     "VatCode": 15, 
     "Name": "Lav mva.",   
     "VatAccount": { 
      "ID": 3, 
      "AccountNo": "3190", 
      "Name": "Misc Items Income" 
     } 
    }, 
    { 
     "Id": 3, 
     "VatCode": 25, 
     "Name": "Høy mva.",   
     "VatAccount": { 
      "ID": 3, 
      "AccountNo": "3190", 
      "Name": "Misc Items Income" 
     } 
    }, 

] 
+0

Congratuations - 你已经赢得了一个问题的标题最错别字的特殊徽章。顺便说一下,这个问题与Angular或JSON无关。 – 2017-07-26 11:09:35

回答

1
Data = //your json data  

this.Data.map(data => data.VatCode); 

的地图()方法创建要求每个数组元素的 函数的结果的新数组。

var data = [ 
 
    { 
 
     "Id": 1, 
 
     "VatCode": 1, 
 
     "Name": "Ingen mva.",    
 
     "VatAccount": { 
 
      "ID": 3, 
 
      "AccountNo": "3190", 
 
      "Name": "Misc Items Income" 
 
     }    
 
    }, 
 
    { 
 
     "Id": 2, 
 
     "VatCode": 15, 
 
     "Name": "Lav mva.",   
 
     "VatAccount": { 
 
      "ID": 3, 
 
      "AccountNo": "3190", 
 
      "Name": "Misc Items Income" 
 
     } 
 
    }, 
 
    { 
 
     "Id": 3, 
 
     "VatCode": 25, 
 
     "Name": "Høy mva.",   
 
     "VatAccount": { 
 
      "ID": 3, 
 
      "AccountNo": "3190", 
 
      "Name": "Misc Items Income" 
 
     } 
 
    }, 
 

 
]; 
 

 
var s = data.map(data => data.VatCode); 
 
console.log(s);