我在 javascript 中有一个像这样的对象数组:
array=[{label: 1, value:e}, {label:1, value: i}, {label: 2, value:l}]
Run Code Online (Sandbox Code Playgroud)
我想在值为 l 时找到标签,所以我写的是:
array.map((i) => i.find(item => item.value === 'l').label)
Run Code Online (Sandbox Code Playgroud)
但返回错误
i.find 不是一个函数
我缺少什么?
我不明白你为什么要使用map- 根据你的问题,你只是想找到具有特定值的元素的标签,所以你需要的是find. 这工作正常:
array.find(item => item.value === 'l').label
返回2。
find您应该处理return 的情况undefined,例如:
var found = array.find(item => item.value === 'l')
if(found){
var label = found.label;
// use label
}else{
// nothing found
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18001 次 |
| 最近记录: |