Metoda sort
Metoda sort kryen renditjen e një vargu
në mënyrë leksikografike dhe kthen
vargun e modifikuar. Si parametër opsional
mund të specifikohet një funksion i personalizuar për renditje.
Sintaksa
varg.sort([funksioni]);
Shembull
Le të renditim një varg:
let arr = ['d', 'b', 'a', 'c'];
console.log(arr.sort());
Rezultati i ekzekutimit të kodit:
['a', 'b', 'c', 'd']
Shembull
Le të renditim një varg me numra:
let arr = [4, 1, 7, 2];
console.log(arr.sort());
Rezultati i ekzekutimit të kodit:
[1, 2, 4, 7]
Shembull
Le të shtojmë numra në varg dhe ta renditim atë:
let arr = [1, 123, 2, 4, 111, 7];
console.log(arr.sort());
Si rezultat i ekzekutimit të kodit shohim që numrat nuk janë të renditur në rend rritës, por në rend leksikografik, d.m.th. numrat krahasohen midis tyre si vargje. Në këtë rast, krahasimi bëhet për secilin karakter, nëse kodi i karakterit të parë është më i madh se kodi i karakterit fqinj, etj. Rezultati:
[1, 111, 123, 2, 4, 7]
Shembull
Tani le të renditim vargun
duke përdorur një funksion, ku do të përcaktojmë kushtin -
nëse parametri i parë është më i madh se i dyti, atëherë e ndërrojmë atë
(për këtë në return caktojmë çdo numër pozitiv).
Në rastin e kundërt, ndërrimi nuk kërkohet dhe ne caktojmë
0 ose çdo numër negativ:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
if (a > b) {
return 1;
} else {
return -1;
}
});
console.log(arr);
Rezultati i ekzekutimit të kodit:
[1, 2, 4, 7, 111, 123]
Shembull
Le ta shkurtojmë kodin për lehtësi në funksionin tonë nga shembulli i mëparshëm:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return a - b;
});
console.log(arr);
Rezultati i ekzekutimit të kodit:
[1, 2, 4, 7, 111, 123]
Shembull
Dhe tani me ndihmën e funksionit le ta renditim vargun në rend zbritës:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return b - a;
});
console.log(arr);
Rezultati i ekzekutimit të kodit:
[123, 111, 7, 4, 2, 1]
Shembull
Le të renditim një varg objektesh
sipas çelësit 'one' në rend rritës:
let 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);
Rezultati i ekzekutimit të kodit:
[
{one: 1, two: 2},
{one: 3, two: 3},
{one: 7, two: 1}
]
Shembull
Dhe tani le të renditim vargun e objekteve
sipas çelësit 'two':
let 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);
Rezultati i ekzekutimit të kodit:
[
{one: 7, two: 1},
{one: 1, two: 2},
{one: 3, two: 3}
]
Shembull
Le të kontrollojmë nëse vargu ka ndryshuar pas
aplikimit të metodës sort:
let arr = ['b', 'a', 'd', 'c'];
let res = arr.sort();
console.log(arr);
Rezultati i ekzekutimit të kodit:
['a', 'b', 'c', 'd']
Shihni gjithashtu
-
metoda
filter,
e cila lejon filtrimin e elementeve të vargut