v2.5.2
Giriş yap

divleri içindeki veriye göre sıralamak

memdhaci
354 defa görüntülendi

merhaba, arrayin içindeki objelerden alınan veriler ile ve foreach ile alt alta listelenmiş divlerim var
divleri içlerindeki sayıya göre nasıl listelerim
örneğin divlerin içinde yazan sayı en büyük olan en üste geliyor

abdullahx
808 gün önce
<button data-type="1" class="sirala">Sırala</button>
<button data-type="2" class="sirala">Eski Haline getir</button>

<div class="container">

</div>
  let array = [
            {
                value: 100
            },
            {
                value: 80
            },
            {
                value: 60
            },
            {
                value: 110
            }
        ],
        defaultOrders = [...array]

    const container = document.querySelector(".container")

    function compare(a, b) {
        if ( parseFloat(a.value) > parseFloat(b.value) ){
            return -1;
        }
        return 0;
    }


    [...document.querySelectorAll(".sirala")].forEach(buttons => {
      buttons.onclick = function() {
          this.dataset.type === '1' ? array.sort(compare) : array = [...defaultOrders]
          container.innerHTML = ''
          array.forEach(value => {
              let div = document.createElement("div")
              div.innerText = value.value
              container.appendChild(div)
          })
      }
    })

Bunu dener misin?