#
LocaleCompare
localeCompare() в JavaScript – это метод для сравнения строк в соответствии с текущей локалью (языком и регионом) пользователя. Он осуществляет сравнение на основе указанной локали и возвращает число, которое указывает на отношение между строками.
Синтаксис: string.localeCompare(compareString, [locales], [options])
string: Это строка, с которой вы хотите сравнить текущую строку.compareString: Также строка, которую вы хотите сравнить с текущей строкой.locales(необязательный): Это параметр, который позволяет указать локаль (язык и регион) для сравнения. Этот параметр является строкой, представляющей локаль (например, "en-US" для английского (США)).options(необязательный): Это объект опций, который позволяет настроить параметры сравнения. Например, вы можете указатьsensitivity(чувствительность к регистру) и другие параметры сравнения.
#
Возвращаемое значение:
0- если строкиstring1иstring2идентичны в соответствии с локальными правилами сравнения.- Отрицательное число (обычно
1) - еслиstring1идет передstring2в локальном порядке сортировки. - Положительное число (обычно
1) - еслиstring2идет передstring1в локальном порядке сортировки.
#
Пример использования:
const str1 = "apple";
const str2 = "banana";
const result = str1.localeCompare(str2);
console.log(result); // Меньше нуля: -1, 'apple' меньше чем 'banana'
const result2 = str1.localeCompare(str2, undefined, { sensitivity: "base" });
console.log(result2); // Ноль: 0, с учетом регистра 'apple' === 'banana'
#
Заключение
localeCompare() полезен, когда вам нужно сравнивать строки с учетом локальных правил сортировки, чтобы обеспечить правильное упорядочивание для разных языков и регионов.
Хорошо работает вместe с методом sort().