Вы когда-нибудь сталкивались с массивом слов или фраз и хотели отсортировать их по последней букве? Что ж, вам повезло! В этой статье мы окунемся в увлекательный мир JavaScript и рассмотрим различные методы сортировки массива по последней букве каждого элемента. Итак, давайте засучим рукава и приготовимся открыть для себя несколько интересных фрагментов кода!
Метод 1: использование метода sort()
с собственной функцией сравнения
const array = ["apple", "banana", "cherry", "date"];
array.sort((a, b) => {
const lastLetterA = a[a.length - 1].toLowerCase();
const lastLetterB = b[b.length - 1].toLowerCase();
return lastLetterA.localeCompare(lastLetterB);
});
console.log(array); // Output: ["banana", "apple", "date", "cherry"]
Метод 2: использование метода localeCompare()
const array = ["apple", "banana", "cherry", "date"];
array.sort((a, b) => a.slice(-1).localeCompare(b.slice(-1)));
console.log(array); // Output: ["banana", "apple", "date", "cherry"]
Метод 3: использование комбинации map()
и sort()
const array = ["apple", "banana", "cherry", "date"];
array.sort((a, b) => a.slice(-1).localeCompare(b.slice(-1))).map(item => console.log(item));
// Output:
// banana
// apple
// date
// cherry
Метод 4. Использование регулярных выражений и метода sort()
const array = ["apple", "banana", "cherry", "date"];
array.sort((a, b) => {
const lastLetterA = a.match(/\w$/)[0].toLowerCase();
const lastLetterB = b.match(/\w$/)[0].toLowerCase();
return lastLetterA.localeCompare(lastLetterB);
});
console.log(array); // Output: ["banana", "apple", "date", "cherry"]
Метод 5: использование комбинации reduce()
и sort()
const array = ["apple", "banana", "cherry", "date"];
const sortedArray = array.reduce((acc, curr) => {
const lastLetter = curr[curr.length - 1].toLowerCase();
acc[lastLetter] = acc[lastLetter] || [];
acc[lastLetter].push(curr);
return acc;
}, {});
const result = Object.values(sortedArray).flat();
console.log(result); // Output: ["banana", "apple", "date", "cherry"]
В этой статье мы рассмотрели несколько методов сортировки массива по последней букве каждого элемента с помощью JavaScript. Мы рассмотрели такие методы, как использование метода sort()
с собственной функцией сравнения, использование метода localeCompare()
, сочетание map()
и sort()
, используя регулярные выражения и комбинацию reduce()
и sort()
. Имея в своем наборе инструментов эти методы, вы теперь готовы решить любую задачу сортировки массива по последней букве. Приятного кодирования!