// небольшая функция хелпер, чтоб писать меньше кода:
const appendNewDiv = parent => parent.appendChild(document.createElement('div'));
// создадим основные эллементы
const wrap = appendNewDiv(albumTrack);
const title = appendNewDiv(wrap);
const itemAlbumWrap = appendNewDiv(wrap);
const itemAlbum = appendNewDiv(itemAlbumWrap);
wrap.classList.add('album__item');
title.classList.add('album_title');
itemAlbumWrap.classList.add('album__item__wrap');
itemAlbum.classList.add('album__photo');
// сюда будем складывать элементы, которые должны удалятся при смене number
let elements = [];
// функция, через которую меняем отображаемые данные по number
const renderByNumber = number => {
const {albumId, albums} = arr2[number];
elements.forEach(e => wrap.removeChild(e));
title.textContent = `Альбом ${albumId}`;
elements = albums.map(album => {
const e = appendNewDiv(wrap);
e.textContent = album.title;
return e;
});
};
// при изменении number теперь просто вызываем
renderByNumber(number);