Простой и чистый подход JavaScript.querySelectorAll
возвращает объект NodeList, поэтому сначала нам нужно создать массив, а затем отсортировать элементы по их атрибуту data
.
const albumList = Array.from(document.querySelectorAll('.album')).sort((a, b) => {
return a.dataset.totalprice - b.dataset.totalprice;
})
console.log(albumList[0].dataset.totalprice)
<div class="album" data-totalprice="170.00"></div>
<div class="album" data-totalprice="200.00"></div>
<div class="album" data-totalprice="150.00"></div>
<div class="album" data-totalprice="100.00"></div>