Sort JS: оптимизация процесса сортировки в JavaScript
Сортировка в JavaScript (sort js) - это метод, который позволяет отсортировать элементы массива в определенном порядке.
Синтаксис:
Метод sort() упорядочивает элементы массива и возвращает отсортированный массив. Сортировка может быть числовой или строковой, в зависимости от переданных элементов массива.
array.sort([compareFunction])
По умолчанию метод sort() сортирует элементы массива как строки в алфавитном порядке. Этот метод сравнивает элементы массива попарно и сортирует их по символьному коду Unicode.
Пример 1: Сортировка массива чисел:
js
let numbers = [1, 3, 2, 5, 4];
numbers.sort(function(a, b) {
return a - b;
});
console.log(numbers); // [1, 2, 3, 4, 5]
Пример 2: Сортировка массива строк:
js
let fruits = ['banana', 'apple', 'orange', 'grape'];
fruits.sort();
console.log(fruits); // ['apple', 'banana', 'grape', 'orange']
Пример 3: Сортировка массива объектов:
js
let students = [
{name: 'John', age: 25},
{name: 'Bob', age: 20},
{name: 'Alice', age: 22}
];
students.sort(function(a, b) {
return a.age - b.age;
});
console.log(students);
// [{name: 'Bob', age: 20}, {name: 'Alice', age: 22}, {name: 'John', age: 25}]
В примере 3, объекты сортируются по возрасту студентов.
Также можно использовать стрелочную функцию для более короткой записи:
js
let numbers = [1, 3, 2, 5, 4];
numbers.sort((a, b) => a - b);
console.log(numbers); // [1, 2, 3, 4, 5]
В случае, если необходимо отсортировать массив в обратном порядке, можно воспользоваться методом reverse():
js
let numbers = [1, 3, 2, 5, 4];
numbers.sort((a, b) => b - a);
console.log(numbers); // [5, 4, 3, 2, 1]
Также, метод sort() можно использовать вместе с chainning (цепочечными вызовами методов) при работе с массивом:
js
let numbers = [1, 3, 2, 5, 4];
let result = numbers.filter((num) => num > 2)
.map((num) => num * 2)
.sort((a, b) => a - b);
console.log(result); // [4, 6, 8, 10]
В данном примере, сначала выбираются элементы массива, которые больше 2, затем умножаются на 2 и сортируются по возрастанию.