2016-07-22 9 views
-1

私はいくつかの例を見ましたが、どちらも私を助けませんでした。私はこのデータ構造をループして、私の例で見つけて、都市名を値で表示したいと思っています。私はループを行う方法を知らない。あなたのJSONオブジェクトを介してJavaScriptでネストされた配列とオブジェクトをループする方法

var cities = { 
    "seattle": [ {"latitude" : 47.6062}, {"longitude": 122.3321} ], 
    "jacksonville": [ {"latitude" : 0.3322 }, {"longitude" : 81.6557}] 
} 

答えて

1

ループ:

var cities = { 
 
     "seattle": [ {"latitude" : 47.6062}, {"longitude": 122.3321} ], 
 
     "jacksonville": [ {"latitude" : 0.3322 }, {"longitude" : 81.6557}] 
 
    } 
 

 
    Object.keys(cities).forEach(function(city){ 
 
    console.log(city); 
 
    console.log(cities[city][0]["latitude"]); 
 
    console.log(cities[city][1]["longitude"]); 
 
    });

最善の解決策は、あなたのJSONを変更することであろうにもかかわらず。経度と緯度を持っているアレイを削除し、ちょうどこのように、1つのオブジェクトにこれらのプロパティの両方を持っている:そう

var cities = { 
    "seattle": {"latitude" : 47.6062 , "longitude": 122.3321}, 
    "jacksonville": {"latitude" : 0.3322 , "longitude" : 81.6557} 
} 

次のループでそれを反復することができるようになります:

Object.keys(cities).forEach(function(city){ 
console.log(city); 
console.log(cities[city]["latitude"]); 
console.log(cities[city]["longitude"]); 
}); 
関連する問題