JavaScript sorteres efter ejendom | Array objekt

Brug sort()-metoden til at sortere Array-objekter efter egenskab i JavaScript. sort() metoden sorterer dens elementer i henhold til de værdier, der returneres af en brugerdefineret sorteringsfunktion.

sort(function compareFn(a, b) { /* ... */ })
compareFunction(a, b) returværdi sorteringsrækkefølge
> 0 sortér a efter b
<0 sortér a før b
===0 behold den oprindelige rækkefølge på a og b

Som standard er sort() metoden logisk sorterer den givne datatype.

JavaScript-sortér efter egenskab

Simpel eksempelkode sorterer et array af objekter baseret på værdierne af objektets egenskaber.

Lad os sortere elementerne i et array alfabetisk og ikke numerisk.

<!DOCTYPE html>
<html>
<body>
  <script>
    function compareName(a, b) {

    // converting to uppercase to have case-insensitive comparison
    const name1 = a.name.toUpperCase();
    const name2 = b.name.toUpperCase();

    let comparison = 0;

    if (name1 > name2) {
      comparison = 1;
    } else if (name1 < name2) {
      comparison = -1;
    }
    return comparison;
  }

  const students = [{name: 'XYZ', age:300},{name: 'ABC', age:200}, {name: 'PQR', age:100}];

  console.log(students.sort(compareName));
</script>
</body>
</html>

Output :

Sorter Array efter egenskab efter numeriske værdier

<script>
    function compareAge(a, b) {

      return a.age - b.age;
    }

    const students = [{name: 'XYZ', age:300},{name: 'ABC', age:200}, {name: 'PQR', age:100}];

    console.log(students.sort(compareAge));
</script>

Output :

0: Object { name: "PQR", age: 100 }

1: Object { name: "ABC", age: 200 }

2: Object { name: "XYZ", age: 300 }

Kommenter, hvis du har nogen tvivl eller forslag til denne Js-sorteringsobjektkode.

Bemærk: Koderne Alle JS-eksempler er testet i Firefox-browseren og Chrome-browseren.

OS:Windows 10

Kode:HTML 5-version