我已经有一段时间了,并且无法弄清楚我有什么以及如何使用它。
当我使用description:"Some text here"
id:1234
location:Array(1)
name:"Some Name"
tags:
Array(7)
0:Object
name:"Landmark"
public_id:"landmark"
__proto__
1:Object
name:"Park"
public_id:"park"
__proto__
时,我得到了回复:
{id:1234,tags:[landmark,park]}
我希望得到这样的东西:
id
我可以通过以下方式获得var thePlaces=[];
$.each(data, function(index, val) {
thePlaces.push({
id:val.id
})
})
部分:
id
如何将标记添加到相应的{{1}}?
答案 0 :(得分:1)
您需要为每个tags
迭代data
(数组)以获取标记名称。
所以循环中的另一个循环迭代data
。
var thePlaces=[];
$.each(data, function(index, val) {
var tagNames=[];
$.each(val.tags, function(i,tagVal){
tagNames.push(tagVal.name)
}
thePlaces.push({
id:val.id,
tags: tagNames
});
});
答案 1 :(得分:1)
使用Array#map()
基于另一个阵列创建新阵列:
// map main array
var thePlaces= data.map(function(item){
// map location array to get tags array
var tags = item.location.map(function(loc){
return loc.name;
});
// new object to return for each item in "data"
return {
id: item.id,
tags: tags
};
});