我有一个字符串value
和一个对象obj
,想要将value
转换为array
然后找到它按值在 obj 中获取名称,但它返回未定义,我错过了什么?
let value = '3,4';
let obj = {
"DistrictData": [{
"id": 3,
"name": 'blah'
}, {
"id": 4,
"name": 'oops'
}]
}
let res = value.split(',').map((v, i) => obj.DistrictData.find(o => o.id === v))
console.log(res)
最佳答案
您需要使用数字值进行查找,因为 split 返回一个字符串数组。然后也映射名称。
let value = '3,4',
obj = { DistrictData: [{ id: 3, name: 'blah' }, { id: 4, name: 'oops' }] },
res = value
.split(',')
.map((v, i) => obj.DistrictData.find(o => o.id === +v))
.map(o => o.name);
console.log(res);
关于javascript - ReactJS/JavaScript 在对象中查找数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60141266/