Wil*_*ilf -1 javascript arrays json extract
我有JSON数据:
"geometry":{"type":"Point","coordinates":[95.9174,3.8394,59]},"id":"us10002b0v"
Run Code Online (Sandbox Code Playgroud)
我需要提取coordinates逗号分隔的每个值.在PHP中我会这样做extract(",",$geometry[coordinates]);.有没有可能在JavaScript中这样做?
来自这里的Json来源:http://earthquake.usgs.gov/earthquakes/feed/geojsonp/2.5/week
这是我的代码:
google.maps.event.addDomListener(window, 'load', function() {
map = new google.maps.Map(document.getElementById('map-canvas'), {
center: { lat: 7.8, lng: 98.3},
zoom: 4,
styles: mapStyle
});
map.data.setStyle(styleFeature);
infowindow = new google.maps.InfoWindow({
content: '<div class = "corp" style="width: 260px; height: 200px">' + '</div>'
})
//InfoWindow
var infowindow = new google.maps.InfoWindow();
google.maps.event.addListener(map,'click',function() {
infowindow.close();
});
map.data.addListener('click', function(event) {
var place = event.feature.getProperty('place');
var mag = event.feature.getProperty('mag');
var depth = event.feature.getProperty('geometry');//I need the depth from this line which is arrayed
var link = event.feature.getProperty('url');
var jsonTime = event.feature.getProperty('time');
var humanTime = new Date('jsonTime');
infowindow.setContent('<div><h3>'+place+'</h3><p>Mag: '+mag+'<br />Depth '+depth+'<br />Time : '+humanTime+'<br /><a href="'+link+'" target="_blank">More</a></p></div>');
infowindow.setPosition(event.feature.getGeometry().get());
infowindow.setOptions({pixelOffset: new google.maps.Size(0,-30)});
infowindow.open(map);
});
Run Code Online (Sandbox Code Playgroud)
是的,您可以将它们作为数组值获取:
var my_json = '{"geometry":{"type":"Point","coordinates":[95.9174,3.8394,59]},"id":"us10002b0v"}';
var my_obj = JSON.parse(my_json);
var lat = my_obj.geometry.coordinates[0];
var lng = my_obj.geometry.coordinates[1];
console.log( lat ); //95.9174
console.log( lng ); //3.8394Run Code Online (Sandbox Code Playgroud)