Metod sort
Metod sort massivni leksikografik tartibda saralaydi va
oʻzgartirilgan massivni qaytaradi. Ixtiyoriy parametr sifatida
oʻzingizning saralash funksiyangizni belgilashingiz mumkin.
Sintaksis
massiv.sort([funksiya]);
Misol
Keling, massivni saralaymiz:
let arr = ['d', 'b', 'a', 'c'];
console.log(arr.sort());
Kodni bajarish natijasi:
['a', 'b', 'c', 'd']
Misol
Keling, raqamlardan tashkil topgan massivni saralaymiz:
let arr = [4, 1, 7, 2];
console.log(arr.sort());
Kodni bajarish natijasi:
[1, 2, 4, 7]
Misol
Keling, massivga raqamlarni qoʻshamiz va uni saralaymiz:
let arr = [1, 123, 2, 4, 111, 7];
console.log(arr.sort());
Kodni bajarish natijasida biz raqamlar oʻsish tartibida emas, balki leksikografik tartibda joylashganini koʻramiz, yaʼni raqamlar bir-biri bilan satrlar kabi solishtiriladi. Bunda solishtirish har bir belgi boʻyicha amalga oshiriladi, birinchi belgining kodi qoʻshni belgining kodidan kattaroqmi va h.k. Natija:
[1, 111, 123, 2, 4, 7]
Misol
Endi keling, massivni funksiya yordamida saralaymiz,
unda shartni belgilaymiz -
agar birinchi parametr ikkinchisidan katta boʻlsa, uni almashtiramiz
(buning uchun return da ijobiy raqam koʻrsatamiz).
Aks holda almashtirish talab qilinmaydi va biz
0 yoki har qanday manfiy raqamni koʻrsatamiz:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
if (a > b) {
return 1;
} else {
return -1;
}
});
console.log(arr);
Kodni bajarish natijasi:
[1, 2, 4, 7, 111, 123]
Misol
Keling, qulaylik uchun oldingi misrdagi funksiya kodini qisqartiramiz:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return a - b;
});
console.log(arr);
Kodni bajarish natijasi:
[1, 2, 4, 7, 111, 123]
Misol
Endi esa funksiya yordamida massivni kamayish tartibida saralaymiz:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return b - a;
});
console.log(arr);
Kodni bajarish natijasi:
[123, 111, 7, 4, 2, 1]
Misol
Keling, obyektlardan tashkil topgan massivni
'one' kaliti boʻyicha oʻsish tartibida saralaymiz:
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);
Kodni bajarish natijasi:
[
{one: 1, two: 2},
{one: 3, two: 3},
{one: 7, two: 1}
]
Misol
Endi esa keling, obyektlardan tashkil topgan massivni
'two' kaliti boʻyicha saralaymiz:
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);
Kodni bajarish natijasi:
[
{one: 7, two: 1},
{one: 1, two: 2},
{one: 3, two: 3}
]
Misol
Keling, sort metodini qoʻllagandan soʻng
massiv oʻzgarganligini tekshiramiz:
let arr = ['b', 'a', 'd', 'c'];
let res = arr.sort();
console.log(arr);
Kodni bajarish natijasi:
['a', 'b', 'c', 'd']
Shuningdek qarang
-
metod
filter,
u massiv elementlarini filtrlash imkonini beradi