3 回答

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]))

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);

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);
添加回答
舉報