有人可以解释为什么我在此代码中出错吗?btw我还是es6中的新手,谢谢
selData.map((item,idx)=>({
const TargetItem = aclEntries.findIndex(rec=>rec.stakeholder_id===item.value)
console.log(TargetItem)
}))
答案 0 :(得分:0)
ES6函数可以用几种不同的方式编写。
// If you have more than 1 param, you have to wrap them with `()`
const functionName = (param1, param2) => { return console.log(param1, param2); }
// If you're just returning a value, you can omit the `{}`
const functionName = (param1, param2) => console.log(param1, param2);
// If you only have 1 param, you can omit the `()` around the params
const functionName = param1 => console.log(param);
我在下面的代码.find()
中添加了另一个示例,它将为您提供aclEntries
的结果,而不仅仅是索引位置。
此外,我正在使用forEach
而不是map
,因为map
创建了一个新数组,并且您没有将map
的返回值分配给变量供以后使用。
const aclEntries = [
{ stakeholder_id: '1234', taco: 'cat' }
];
const selData = [
{ value: '1234' }
];
selData.forEach((item) => {
const TargetItemIndex = aclEntries.findIndex(rec => rec.stakeholder_id === item.value);
const TargetItemContent = aclEntries.find(rec => rec.stakeholder_id === item.value);
console.log('index', TargetItemIndex);
console.log('content', TargetItemContent);
})