我正在编写一个遍历对象数组的函数,并尝试返回特定对象的索引。
我的本能是遍历数组并找到匹配的属性值。但这只给了我对象内属性的索引,始终为0。
第一个函数addToCollection将记录添加到记录集合中 以标题,艺术家和年份为参数。我希望我的新功能找到一个特定的专辑并在集合数组中返回其索引。
function addToCollection( title, artist, year) {
collection.push({title, artist, year}); // adds album to array
return {title, artist, year}; // returns newly created object
} // end of addToCollection function
console.log( addToCollection('The Real Thing', 'Faith No More',
1989));
console.log( addToCollection('Angel Dust', 'Faith No More',
1992));
console.log( addToCollection( 'Nevermind', 'Nirvana', 1991));
console.log( addToCollection( 'Vulgar Display of Power',
'Pantera',
1991));
function findRecord ( title ) { //function not working!!
for (let i = 0; i < collection.length; i++) {
if (collection[i].title === title) {
return collection[i].title.indexOf(title);
} else {
return false;
}
}
}
我想要的是获取数组内对象的索引。我只是一直得到0。
答案 0 :(得分:1)
return collection[i].title.indexOf(title);
上面的代码是什么? :)
return i;
您将获得索引