У меня есть два массива объектов. Мне нужно перенести объекты из одного массива в другой, но мне нужно проверить obj Id, прежде чем я это сделаю. Если идентификатор уже находится в основном массиве (songDatabase), есть ли способ увеличить obj Id вместо перезаписи или дублирования идентификаторов?
Вот код, который у меня пока есть:
onst songDatabase = [{ songId: 1, title: 'Drive', artist: 'The Cars', },
{ songId: 2, title: 'When Doves Cry', artist: 'Prince', },
{ songId: 3, title: 'Butterfly', artist: 'Crazy Town', },
{ songId: 4, title: 'The Way I Are', artist: 'Timbaland', },];
const songList = [{ songId: 5, title: 'Save a prayer', artist: 'Duran Duran', },
{ songId: 1, title: 'Sunday Blood Sunday', artist: 'U2', }];
function checkSongId(songIdCheck) {
for (let i = 0; i < songDatabase.length; i++){
songIdCheck = songDatabase[i].songId; //read the songId from songDb
console.log(songIdCheck); //log each songId
}
if(songIdCheck === getNewSong(songList.songId)) { //check if the songId is already on the songDatabase
songIdCheck =+ songIdCheck;
} else {
songDatabase.push(songList);
}
// console.log('song already on the DB');
return;
}
function getNewSong(songId, title, artist) {
for (let x = 0; x < songList.length; x++ ) {
songId = songList[x].songId;
title = songList[x].title;
artist = songList[x].artist;
}
return {songId, title, artist}; //only returns the last songList Object
}
console.log(checkSongId());
console.log(getNewSong());
Я надеялся увидеть все песни в базе данных песен с уникальными идентификаторами, но я не могу заставить его работать. Любая помощь приветствуется.