2016-07-24 1 views
0
var data = { 
     "eventsHistory": [ 
      { 
       "gameType": "RACE", 
       "gameSubType": "HORSE", 
      }, 
      { 
       "gameType": "RACE", 
       "gameSubType": "DOG", 
      }, 
      { 
       "gameType": "NORACE", 
      } 
      ]}; 

私はこの構造を持っています。私はすべてのgameTypeを表示したい。しかし、gameSubTypeがある場合は、この値を表示して、すべてのgameType RACEをスキップします。例えばオブジェクトをループして異なるキーを表示

:結果は次のようになります。 HORSE、DOG、NORACE

私はそれを正しく表示する方法を見つけることができません。助けてもらえますか?

答えて

0

Javascriptをこれがあなたを助け

var json = data.eventsHistory; 
    for (var i = 0; i < json.length; i++) { 
     if (json[i].hasOwnProperty("gameSubType")) 
     { 
     console.log(json[i].gameSubType); 
     }else { 
     console.log(json[i].gameType); 
     } 

    } 
0
var List = [];  
for (var i=0; i < data.eventsHistory.length; i++) { 
    List.push(data.eventsHistory[i].gameSubType ? data.eventsHistory[i].gameSubType : data.eventsHistory[i].gameType) 
} 
console.log(List) 
["HORSE", "DOG", "NORACE"] 

希望をオブジェクト上のキーが存在するかどうかを確認するためにhasOwnPropertyをメソッドを持っているかではありません。ありがとうございました

関連する問題