2017-01-11 16 views
0

から与えられた値を持つすべての偶然を取得します。私は、オブジェクトのこの配列を持つオブジェクトの配列

var hola = [{key:id , desc:description }]; 
// they are filled with data with ajax from a table 

これは私が必要なもの

var hola = [ 
      {key: "AL-32021611", descc: "7500"}, 
      {key: "AL-32021612", descc: "Continental"}, 
      {key: "AL-32021612", descc: "R3"}, 
      {key: "AL-32021612", descc: "7500"} 
      ]; 

今の値であることことが指定された値で、iは例えば

newarr= {key:AL-32021612}[descc:"continental", "r3", "7500"] 

を得るが、この「newarr」から私はそのすべてのdescc vを取得するには、インデックスのいくつかの種類のようなキーが必要ですvarとイムでaluesは本当に失われたとここで私はこれの長さごととしてこのnewarrを使用し、その内容を印刷するが、私はちょうどそのため、このdescc値を必要とし、その複雑で厄介しかしイムだろう、なぜ

$.each(newarr, function (i, data) 
{ trHTML = '<div class="three_col_to_one_col categories">' + idVal[i] +'</div>' }) 

です新しいと私はdownvotesを得るかもしれないが、とにかく私を読んでくれてありがとう

答えて

0

キーはIDの/キーで値は "descc"の配列です辞書として使用する空のオブジェクトを作成します。このようにそれを記入してください:

var hola = [ 
 
    {key: "AL-32021611", descc: "7500"}, 
 
    {key: "AL-32021612", descc: "Continental"}, 
 
    {key: "AL-32021612", descc: "R3"}, 
 
    {key: "AL-32021612", descc: "7500"} 
 
]; 
 

 
var dict = {}; 
 
hola.forEach(obj => { 
 
    if (!dict[obj.key]) dict[obj.key] = []; 
 
    dict[obj.key].push(obj.descc); 
 
}); 
 

 
console.log(dict);

desccの各アレイはIDによってアクセスすることができその後:dict["AL-32021612"]は、配列["Continental", "R3", "7500"]

+0

ES6だろう、答えは私が必要とするものであるが、どのsugestions古いバージョンのES6の矢印の同値のために? – Godeolo

+0

... ES5ソリューションが必要ですか?矢印関数の代わりに通常の関数を使うだけです – qxz

関連する問題