Может кто-нибудь объяснить, почему я получаю ошибку в этом коде? Кстати, я все еще новичок в es6, спасибо
selData.map((item,idx)=>({
const TargetItem = aclEntries.findIndex(rec=>rec.stakeholder_id===item.value)
console.info(TargetItem)
}))
Также следует отметить, что вы используете .map и в настоящее время возвращаете undefined (без явного возврата) для каждого элемента, что приведет к новому массиву, полностью заполненному undefined. Итак, что бы вы ни пытались сделать, если вы не планируете возвращать новый массив, возможно, forEach будет лучшим выбором. В противном случае не забывайте возвращать желаемые вещи из каждого товара.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Функции ES6 можно записать несколькими способами.
// If you have more than 1 param, you have to wrap them with `()`
const functionName = (param1, param2) => { return console.info(param1, param2); }
// If you're just returning a value, you can omit the `{}`
const functionName = (param1, param2) => console.info(param1, param2);
// If you only have 1 param, you can omit the `()` around the params
const functionName = param1 => console.info(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.info('index', TargetItemIndex);
console.info('content', TargetItemContent);
})
Удалите
(перед функциональным блоком, иначе он будет проанализирован как объект (что не удастся) (то же самое после конца блока)