Обновленная версия проблемы: моя цель состоит в том, чтобы получить индексы элемента этого массива с условием, что подэлемент param_name ключевых параметров определит индекс объекта. Например, объект с именем ключа «caller1» должен иметь индекс по умолчанию 0, но, поскольку param_name - «caller2», он будет принимать индекс 1; аналогично объект 3 с именем ключа 'caller3' примет индекс 0, поскольку param_name равно 'caller1'. Для объекта 2 с именем ключа 'caller2', поскольку param_name совпадает с именем ключа caller2, он сохранит свой индекс по умолчанию, равный 1.
const array1 = [{
name: 'caller1',
cost: 12,
params:[{param_name:'caller2',apparatus:'fittings'}]
},
{
name: 'caller2',
cost: 2,
params:[{param_name:'caller2',apparatus:'fittings'}]
},
{
name: 'caller3',
cost: 12,
params:[{param_name:'caller1',apparatus:'valves'}]
}
];
const results = []
for (let j=0; j<array1.length;j++){
results[j] = array1[j].findIndex(a => a.name==array1[j].name);
}
console.log(results);