我有以下格式的JSON
waypoints = [
{
lat: 22,
lng: 44
},
{
lat: 55,
lng: 77
}
]
我需要使用JS
将其转换为以下格式[[22, 44], [55, 77]]
请一位有人帮我解决问题
答案 0 :(得分:4)
只需使用map
。
var foo = waypoints.map(function(waypoint){
return [waypoint.lat, waypoint.lng];
});
答案 1 :(得分:2)
您可以使用var waypoints = [{
lat: 22,
lng: 44
}, {
lat: 55,
lng: 77
}];
var newArr = waypoints.map(function(obj) {
return [obj.lat, obj.lng];
});
document.body.textContent = JSON.stringify(newArr);
方法创建一个新数组,该方法在执行时会创建一个新数组而不修改原始数组:
hashMap.put("myKey", "myValue");
答案 2 :(得分:1)
您可以使用for ... in循环并获取数组
var array=[];
for(var i =0;i< waypoints.length;i++){
var nestedArray=[];
for(var key in waypoints[i]){
nestedArray.push(waypoints[i][key])
}
array.push(nestedArray)
}
使用JavaScript的map
功能找到其他答案。太好了!!!
答案 3 :(得分:0)
var waypoints = [
{
lat: 22,
lng: 44
},
{
lat: 55,
lng: 77
}
];
var array = [];
for (i in waypoints) {
array.push([]);
for (j in waypoints[i]) {
array[i].push(waypoints[i][j]);
}
}
答案 4 :(得分:0)
You can use:
waypoints = [{lat: 22, lng: 44 }, { lat: 55, lng: 77 } ];
var innerArr = [];
var requiredArray = [];
for (var i = 0; i < waypoints.length; i++) {
innerArr = [];
innerArr.push(waypoints[i].lat);
innerArr.push(waypoints[i].lng);
requiredArray.push(innerArr);
}