მეთოდი sort
მეთოდი sort ახდენს მასივის დალაგებას
ლექსიკოგრაფიული თანმიმდევრობით და აბრუნებს უკვე
შეცვლილ მასივს. არასავალდებულო პარამეტრად
შეგიძლიათ მიუთითოთ საკუთარი ფუნქცია დალაგებისთვის.
სინტაქსი
მასივი.sort([ფუნქცია]);
მაგალითი
დავალაგოთ მასივი:
let arr = ['d', 'b', 'a', 'c'];
console.log(arr.sort());
კოდის შესრულების შედეგი:
['a', 'b', 'c', 'd']
მაგალითი
დავალაგოთ რიცხვების მასივი:
let arr = [4, 1, 7, 2];
console.log(arr.sort());
კოდის შესრულების შედეგი:
[1, 2, 4, 7]
მაგალითი
მასივს დავუმატოთ რიცხვები და დავალაგოთ იგი:
let arr = [1, 123, 2, 4, 111, 7];
console.log(arr.sort());
კოდის შესრულების შედეგად ჩვენ ვნახავთ, რომ რიცხვები განლაგებულია არა ზრდის მიხედვით, არამედ ლექსიკოგრაფიული თანმიმდევრობით, ე.ი. რიცხვები ერთმანეთთან შედარებულია როგორც სტრიქონები. ამ შემთხვევაში შედარება ხდება თითოეულ სიმბოლოზე, მეტია თუ არა პირველი სიმბოლოს კოდი, მეზობელი სიმბოლოს კოდზე და ა.შ. შედეგი:
[1, 111, 123, 2, 4, 7]
მაგალითი
ახლა დავალაგოთ მასივი
ფუნქციის გამოყენებით, რომელშიც ჩავწერთ პირობას -
თუ პირველი პარამეტრი მეორეზე მეტია, მაშინ გადავანაცვლებთ
(ამისთვის return-ში ნებისმიერი დადებითი რიცხვი).
პირობის შეუსრულებლობის შემთხვევაში გადანაცვლება არ არის საჭირო და ჩვენ მივუთითებთ
0-ს ან ნებისმიერ უარყოფით რიცხვს:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
if (a > b) {
return 1;
} else {
return -1;
}
});
console.log(arr);
კოდის შესრულების შედეგი:
[1, 2, 4, 7, 111, 123]
მაგალითი
მოდით, მოვიკლოთ კოდი ჩვენს ფუნქციაში წინა მაგალითიდან:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return a - b;
});
console.log(arr);
კოდის შესრულების შედეგი:
[1, 2, 4, 7, 111, 123]
მაგალითი
ახლა კი ფუნქციის გამოყენებით დავალაგოთ მასივი კლების მიხედვით:
let arr = [1, 123, 2, 4, 111, 7];
arr.sort(function(a, b) {
return b - a;
});
console.log(arr);
კოდის შესრულების შედეგი:
[123, 111, 7, 4, 2, 1]
მაგალითი
დავალაგოთ ობიექტების მასივი
'one' გასაღების მიხედვით ზრდის მიხედვით:
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);
კოდის შესრულების შედეგი:
[
{one: 1, two: 2},
{one: 3, two: 3},
{one: 7, two: 1}
]
მაგალითი
ახლა კი დავალაგოთ ობიექტების მასივი
'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);
კოდის შესრულების შედეგი:
[
{one: 7, two: 1},
{one: 1, two: 2},
{one: 3, two: 3}
]
მაგალითი
შევამოწმოთ, შეიცვალა თუ არა მასივი
მეთოდის sort გამოყენების შემდეგ:
let arr = ['b', 'a', 'd', 'c'];
let res = arr.sort();
console.log(arr);
კოდის შესრულების შედეგი:
['a', 'b', 'c', 'd']
იხილეთ აგრეთვე
-
მეთოდი
filter,
რომელიც საშუალებას აძლევს მასივის ელემენტების ფილტრაციას