Sort metodi

sort metodi massiwleri leksikografik tertipde tertipleýär we üýtgedilen massiw ýaýduryş edýär. Tertipleme üçin islegiňize görä öz funksiýaňyzy görkezip bilersiňiz.

Sintaksis

javascriptmassiw.sort([funksiýa]);

Mysal

Massiw tertipleýäliň:

javascriptlet arr = ['d', 'b', 'a', 'c'];
console.log(arr.sort());

Kodyň netijesi:

javascript['a', 'b', 'c', 'd']

Mysal

Sanly massiw tertipleýäliň:

javascriptlet arr = [4, 1, 7, 2];
console.log(arr.sort());

Kodyň netijesi:

javascript[1, 2, 4, 7]

Mysal

Massiwä sanlar goşup, tertipleýäliň:

javascriptlet arr = [1, 123, 2, 4, 111, 7];
console.log(arr.sort());

Kody ýerine ýetirilende, sanlaryň köpelme tertibinde däl-de, leksikografik tertipde ýerleşendigini göreris, ýagny sanlar bir-biri bilen setir hökmünde deňeşdirilýär. Bu ýagdaýda deňeşdirme her simwol üçin ýerine ýetirilýär, birinji simwolyň kody goňşusynyňkydan ulymy ýa-da ş.m. Netije:

javascript[1, 111, 123, 2, 4, 7]

Mysal

Indi massiw funksiýa kömegi bilen tertipleýäliň, funksiýada şert belgileris - eger birinji parametr ikinjisinden uly bolsa, ony ýerini üýtgederis (bun üçin return hasaplamasynda islendik pozitiw san ýazmaly). Beýle bolmadyk ýagda ýerini üýtgetmek gerek däl we biz 0 ýa-da islendik negatiw san görkezýäris:

javascriptlet arr = [1, 123, 2, 4, 111, 7];

arr.sort(function(a, b) {
  if (a > b) {
    return 1;
  } else {
    return -1;
  }
});

console.log(arr);

Kody ýerine ýetirip netijesi:

javascript[1, 2, 4, 7, 111, 123]

Mysal

Öňki mysalyň funksiýasyndaky kody gysgaldyýalyň:

javascriptlet arr = [1, 123, 2, 4, 111, 7];

arr.sort(function(a, b) {
  return a - b;
});

console.log(arr);

Kody ýerine ýetirip netijesi:

javascript[1, 2, 4, 7, 111, 123]

Mysal

Indi funksiýa kömegi bilen massiw azalma tertipde tertipleýäliň:

javascriptlet arr = [1, 123, 2, 4, 111, 7];

arr.sort(function(a, b) {
  return b - a;
});

console.log(arr);

Kody ýerine ýetirip netijesi:

javascript[123, 111, 7, 4, 2, 1]

Mysal

Obýektleriň massiwini 'one' açar sözi boýunça köpelme tertipde tertipleýäliň:

javascriptlet arr = [
  {one: 1, two: 2},
  {one: 7, two: 1},
  {one: 3, two: 3}
];
arr.sort(function(a, b) {
  return a.one - b.one;
});

console.log(arr);

Kody ýerine ýetirip netijesi:

javascript[
  {one: 1, two: 2},
  {one: 3, two: 3},
  {one: 7, two: 1}
]

Mysal

Indi bolsa obýektleriň massiwini 'two' açar sözi boýunça tertipleýäliň:

javascriptlet arr = [
  {one: 1, two: 2},
  {one: 7, two: 1},
  {one: 3, two: 3}
];
arr.sort(function(a, b) {
  return a.two - b.two;
});

console.log(arr);

Kody ýerine ýetirip netijesi:

javascript[
  {one: 7, two: 1},
  {one: 1, two: 2},
  {one: 3, two: 3}
]

Mysal

sort metodyny ulananyňyzdan soň massiw üýtgedilendigini barlaýalyň:

javascriptlet arr = ['b', 'a', 'd', 'c'];
let res = arr.sort();

console.log(arr);

Kody ýerine ýetirip netijesi:

javascript['a', 'b', 'c', 'd']

Şeýle-de gözüňüzden geçiriň

  • filter metodi,
    massiwiň elementlerini süzgüçden geçirmäge rugsat berýär