3 回答
![?](http://img1.sycdn.imooc.com/533e4d2600013fe202000200-100-100.jpg)
TA贡献1797条经验 获得超6个赞
keys.map(k => obj[k])
const keys = [32486479, 32486481];
const obj = { "32486479": { "id": "32486479", "lat": 33, "lng": 73, "accuracy": 51, "updated_at": 1570908416 }, "32486480": { "id": "32486480", "lat": 33, "lng": 73, "accuracy": 51, "updated_at": 1570908416 }, "32486481": { "id": "32486481", "lat": 33, "lng": 73, "accuracy": 51, "updated_at": 1570908416 }};
console.log(keys.map(k => obj[k]))
![?](http://img1.sycdn.imooc.com/54584ee0000179f302200220-100-100.jpg)
TA贡献1906条经验 获得超10个赞
您可以使用 Array.map方法执行此操作:
const ids = [32486479, 32486481]
const data = {
"32486479": {
"id": "32486479",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
},
"32486480": {
"id": "32486480",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
},
"32486481": {
"id": "32486481",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
}
}
const expectedResult = [{
"id": "32486479",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416,
},{
"id": "32486481",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
}]
const actualResult = ids
// loop on the ids array and use them to access object inside data
.map(id => data[String(id)])
// filter falsy value
.filter(Boolean);
console.log(actualResult);
![?](http://img1.sycdn.imooc.com/545847d40001cbef02200220-100-100.jpg)
TA贡献1963条经验 获得超6个赞
您可以使用 Array.map方法执行此操作:
const ids = [32486479, 32486481]
const data = {
"32486479": {
"id": "32486479",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
},
"32486480": {
"id": "32486480",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
},
"32486481": {
"id": "32486481",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
}
}
const expectedResult = [{
"id": "32486479",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416,
},{
"id": "32486481",
"lat": 33,
"lng": 73,
"accuracy": 51,
"updated_at": 1570908416
}]
const actualResult = ids
// loop on the ids array and use them to access object inside data
.map(id => data[String(id)])
// filter falsy value
.filter(Boolean);
console.log(actualResult);
添加回答
举报