2017-01-12 16 views
2

私は指定されたキーを持つ配列に変換するjsonデータを持っています。Jsonを配列に変換するAngular2 js型のスクリプト

[ 
    {"id":1,"url": "http://test.com"}, 
    {"id":2,"url":"https://ad.com/"}, 
    {"id":3,"url":"https://ad12.com/"}, 
    {"id":4,"url":"https://ad12.com/"} 
] 

コード:

http.get('', { headers: ''}) 
    .map(var response => response.json(); 
    return response.map(d => { 
    return new class(d.url); 
    });); 

私はURLのみキー値を必要としています。

Output:`["http://test.com", "http://ad.com", "http://ad12.com"] 

`

+0

も、モデルでそれを保持し、その上にマップを適用しない理由は? –

+0

私は試しましたが、それを達成できませんでした。 –

+2

あなたが試したことを示してください。 – echonax

答えて

1

それは次のようになります。

http.get('', { headers: ''}) 
    .map(response => { 
     return response.json().map(d => { 
      return new class(d.url); 
     }); 
    }); 
0

その後、lodashを使用している場合..

var urls = _.map(yourArray, 'url'); 

またはES6とlodash ..

let urls = _.map(yourArray, 'url'); 

またはES6なしlodash ..

lets urls = yourArray.map((obj) => { 
    return obj.url; 
}); 

またはES5なしlodash ..

lets urls = yourArray.map(function (obj) { 
    return obj.url; 
}); 
+1

もっと慣用的なES6は 'map(({url})=> url)'です。 –

+0

チップのための良いthx – danday74

関連する問題