2017-01-09 19 views
0

により、オブジェクトの配列から重複を取得します。私はオブジェクトの配列を持っている価値

var arr = [ 
    {number: "AL-32021611", b: "7500"}, 
    {number: "AL-32021612", b: "Continental"}, 
    {number: "AL-32021612", b: "R3"}, 
    {number: "AL-32021612", b: "7500"} 
]; 

は、私はすべての数の偶然の一致を取得し、数のinstedに「B」の値を値を得ることができる方法はありますvar?

//loop 

result = ["Continental", "R3", "7500"] 

例えば

私がしたいことは、たとえば、私は数をreciveして、私はその数の値を持つすべての偶然の一致を検索し、私は正確に必要なことは偶然の一致

+0

あなたのforループは次のようになりますか?結果は '{" AL-32021612 ":[" Continental "、" R3 "、" 7500 "]}のようなものではないでしょうか? 'arr'の最初の要素が' {number: "AL-32021611"、b: "United"} 'の場合はどうなりますか? –

+0

私が欲しいのは、例えば、私は数字を暗唱して、その数字の値ですべての偶然性を検索します。正確に必要なのは、偶然の値です。 – Godeolo

答えて

2

から全ての値ですES6機能を使用する:

let result = Array.from(new Set(arr.map(el => el.b))); 

または

let result = [...new Set(arr.map(el => el.b))]; 
+0

私はこれがOPの望みだとは思いません。コメントから、OPが特定の 'number'値を供給し、対応する' b'値のリストを取得したいと思うようです。 –

0

STRがあなたのための素敵な1行の答えを持っていますが、あなたはまた、簡単なと明示的にそれを行うことができますforループ。下記参照。

あなたがそれを持っているとして、

result = {"Continental", "R3" , "7500"}; 

が有効なオブジェクトではありません。 forループを使用して、b値を次のような新しい配列にプッシュすることができます。

result = ["Continental"、 "R3"、 "7500"];ですから、number` `のための特定の値の1回の発生がありますエントリを破棄したい

var result = []; 
for(var n of arr) { 
    result.push(arr[n].b); 
} 
return result; 
関連する問題