在javascript中的数组内创建数组
我有以下来自API的回应在javascript中的数组内创建数组,javascript,arrays,json,Javascript,Arrays,Json,我有以下来自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]]
[{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]]
您可以使用
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);
对于即将推出的ES7,您可以使用
var data=[{name:'tajmahal',lat:111,lng:222},{name:'Agra-Fort',lat:333,lng:444},{name:'Red-Fort',lat:555,lng:666}];
log(data.map(o=>Object.values(o))代码>您可以使用
您希望在JavaScript/PHP中解决什么问题?这是一个相当简单的映射。向我们展示您的尝试,这不是一个免费的代码编写service@Satpal在javascript中,但我认为逻辑在php中是相同的,所以我将其标记为遍历Object.keys()
无需使用初始化新数组[]
。map
函数输出不与数组分离,即其[a,b,c,d..]
而不是[[a,b,c],[d,e,f]…]
这和你说的不一样。如果这是一个愚蠢的问题,我很抱歉[]
如果我使用alert
只需在控制台中查看,或者如果你想在alert中使用JSON.stringify(newArr)
看起来很熟悉;)是的,刚刚从简单函数编辑到es7,然后看到你已经给出了解决方案。不是那么复杂的问题。
var coordinates = response.map(x => Object.values(x));