2017-06-29 3 views
-1

JSのhashMapに関する問題があります。私は何回か繰り返されるいくつかのプロパティ "キー"を持っていますが、少なくとも私のhashMapでは最後のものしか見つけません。hashmap javascriptで重複キーを表示する方法は?

例:12345 : 1, 12346:3 , 12347:4を:私たちは、キー(12345, 12346, 12346, 12346, 12347)と私はそれが表示される最終的にいくつかの値

12345 <= 1 
12346 <= 2 
12346 <= 1 
12346 <= 3 
12347 <= 4 

属性それぞれについてのこのリストを持っていると仮定してみましょう。しかし、私はまた、私のHashMapに12346 : 1, 12346 : 2の情報が必要です。それを修正するには?ここ は私のコードです:

getFacing: function(iSceneGraph){ 
       var facingArray = {}; 
       if (iSceneGraph.children.length >0){ 
        for (var i = 0; i < iSceneGraph.children.length; i++){ 
         facingArray = Object.assign(facingArray, this.getFacing(iSceneGraph.children[i])); 
        } 
       } 
       if (iSceneGraph.merch.type === "Facing"){ 
        facingArray[iSceneGraph.merch.ean] = iSceneGraph.merch.hcount; 
       } 
       return facingArray; 
      } 
+0

あなたが達成したい何のキーがユニークであり、重複が不可能なマップのようなことはできません。 '12346:[2,1,3]'のような配列で値を持つことができます – nikhil

+4

HashMapにキーを重複させることはできません。問題を再考する必要があります – dloeda

+0

重複したキーをHashMap。別の構造を使用する必要があります。 '[{" 12345 ":1}、{" 12346 ":2}、...}のキーと値のペアを含む配列かもしれません。 – marwils

答えて

1
**Try this i think this will help you** 
<script type="text/javascript"> 
var animals = ['Cow', 'Cow', 'Dog', 'Cat','Cow']; 
var sounds = ['Moo', 'Oink', 'Woof', 'Miao','Moo']; 
var arr = []; 

for(i = 0; i < animals.length; i++) { 
    var hash = {}; 
    hash[animals[i]] = sounds[i]; 
    arr.push(hash); 
} 

console.log(arr); 

</script> 
関連する問題