2014-12-15 14 views
8

Mam więc kanał JSON i próbuję po prostu wydrukować niektóre wartości.

Mój Javascript poniżej rodzaj prac. Ale nie wygląda to bardzo "poprawnie". Czy jest lepszy sposób na robienie tego?

JSON

{ 
    "info":[ 
     { 
     "lon":-2.1, 
     "lat":55.2 
     }, 
     { 
     "lon":-2.12, 
     "lat":55.23 
     } 
    ] 
} 

JavaScript

var jsonURL = "url here"; 

$.getJSON(jsonURL, function(json1) { 
    $.each(json1, function(key, data) { 
     $.each(data, function(key, data){ 

      var latLng = new google.maps.LatLng(
        data.lat, data.lon); 

      var marker = new google.maps.Marker({ 
       position : latLng 
      }); 

      marker.setMap(map); 

     }); 
    }); 
}); 
+0

Wygląda dobrze dla mnie. Czy napotykasz na jakiś problem, który sprawi, że będziesz myśleć inaczej? – Aweary

Odpowiedz

3

Wiesz "info" atrybut istnieje i nie potrzebują pętli do niego dostać. Wewnętrzna pętla wygląda dobrze.

$.getJSON(jsonURL, function(json1) { 

     $.each(json1.info, function(key, data){ 

      var latLng = new google.maps.LatLng(
        data.lat, data.lon); 

      var marker = new google.maps.Marker({ 
       position : latLng 
      }); 

      marker.setMap(map); 

     }); 
}); 
Powiązane problemy