我有以下来自API的回复
[{name : Taj Mahal, lat : 111 , lng : 222},
{name : Agra Fort, lat : 333 , lng : 444},
{name : Red Fort, lat : 555 , lng : 666}]
我希望填充像这样的数组
var coordinates = [[Taj Mahal, 111, 222],
[Agra Fort, 333, 444],
[Red Fort, 555, 666]]
答案 0 :(得分:3)
您可以使用map
来实现此目标
var arr = [{ name: 'Taj Mahal', lat: 111, lng: 222 },
{ name: 'Agra Fort', lat: 333, lng: 444 },
{ name: 'Red Fort', lat: 555, lng: 666 }];
var newArr = arr.map(function (item) {
return [item.name, item.lat, item.lng];
});
console.log(newArr);
答案 1 :(得分:1)
即将推出的ES7,您可以使用Object.values
。
var data = [{ name: 'Taj Mahal', lat: 111, lng: 222 }, { name: 'Agra Fort', lat: 333, lng: 444 }, { name: 'Red Fort', lat: 555, lng: 666 }];
console.log(data.map(o => Object.values(o)));

ES5
var data = [{ name: 'Taj Mahal', lat: 111, lng: 222 }, { name: 'Agra Fort', lat: 333, lng: 444 }, { name: 'Red Fort', lat: 555, lng: 666 }];
console.log(data.map(function (o) {
return Object.keys(o).map(function (k) {
return o[k];
});
}));

答案 2 :(得分:0)
您只需使用Object.values(obj)
进行映射即可var coordinates = response.map(x => Object.values(x));