Сортировка массива по последней букве: раскрыты самые крутые методы JavaScript

Вы когда-нибудь сталкивались с массивом слов или фраз и хотели отсортировать их по последней букве? Что ж, вам повезло! В этой статье мы окунемся в увлекательный мир 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(). Имея в своем наборе инструментов эти методы, вы теперь готовы решить любую задачу сортировки массива по последней букве. Приятного кодирования!