Как сравнить строки в javascript
Перейти к содержимому

Как сравнить строки в javascript

4 способа сравнить строки в JavaScript

В этой заметке ты узнаешь как сравнивать строки в JS с примерами использования.

Строгое равенство строк

Чтобы понять равны ли две строки, можно использовать оператор строгого сравнения === . Он вернет false если строки отличаются и true , если они равны.

const s1 = 'learn'; const s2 = 'today'; console.log(s1 === 'learn'); // true console.log(s1 === s2); // false 

Сравнение строк с помощью === всегда происходит с учетом регистра, то есть учитываются большие и маленькие буквы.

const s1 = 'javascript'; const s2 = 'Javascript'; console.log(s1 === s2); // false 

Сравнение строк без учета регистра

Если тебе неважно в каком регистре написаны буквы в строках, то ты можешь перевести обе строки в нижний регистр и после этого выполнить сравнение.

const s1 = 'javascript'; const s2 = 'Javascript'; console.log(s1.toLowerCase() === s2.toLowerCase()); // true 

Сравнение длины строк

Если тебе нужно узнать какая из двух строк длиннее, то операторы “больше” и “меньше” не подойдут. Они сравнивают строки в алфавитном порядке и учитывают длину строк только в самую последнюю очередь.

const s1 = 'javascript'; const s2 = 'node.js'; console.log(s1 > s2); // false 

Длина строки хранится в специальном поле length . Сравнивая значение этого поля у разных строк, мы узнаем какая из них длиннее.

const s1 = 'javascript'; const s2 = 'node.js'; console.log(s1.length > s2.length); // true 

Проверка вхождения строки

Для того, чтобы проверить, входит ли одна строка в другую — используется встроенная функция includes .

const s1 = 'javascript'; const s2 = 'python'; console.log(s1.includes('script')); // true console.log(s2.includes('script')); // false 

Как сравнить строки в JS

Сравнить строки можно с помощью следующих операторов: > , , == , === . Смотрите пример:

let str1 = ‘abcde’; let str2 = ‘abcd’; let str3 = ‘abcde’; console.log(‘str1 > str2’, str1 > str2); console.log(‘str1 == str2’, str1 == str2); console.log(‘str1 === str3’, str1 === str3);

Результат выполнения кода:

‘str1 > str2’ true ‘str1 == str2’ false ‘str1 === str3’ true

С помощью метода localeCompare

Чтобы сравнить строки также можно воспользоваться методом localeCompare , который возвращает число 1 , если первая строка больше второй, -1 — если меньше и 0 — если обе строки равны друг другу. Смотрите пример:

let str1 = ‘abcde’; let str2 = ‘abcd’; let str3 = ‘abcde’; let res1 = str1.localeCompare(str2); let res2 = str2.localeCompare(str1); let res3 = str1.localeCompare(str3); console.log(‘res1’, res1); console.log(‘res2’, res2); console.log(‘res3’, res3);

Результат выполнения кода:

‘res1’ 1 ‘res2’ -1 ‘res3’ 0

Смотрите также

  • урок
    cтроки в JavaScript

Сравните две строки в JavaScript

В этом посте мы обсудим, как сравнить две строки в JavaScript.

1. Использование localeCompare() метод

The localeCompare() Метод сравнивает строку с другой строкой и возвращает целое число, указывающее, идет ли строка до, после или эквивалентно указанной строке. Он возвращает отрицательное число, если строка находится перед строкой сравнения; положительный, если строка находится после строки сравнения; 0, если обе строки эквивалентны.

Как сравнить 2 строки посимвольно?

Привет всем. Нужно реализовать фичу на сайте:
Есть input, на нем висит событие keyup. Также есть массив городов. Нужно, чтобы при вводе символа в input, происходило сравнивание этого символа(строки) со всеми элементами массива. Т.е., например я ввожу Мо — мне в подсказке появляется Москва и другие города из массива, начинающиеся на Мо. Живой поиск одним словом. Реализовать я все могу, но не могу понять, как сравнить строки посимвольно, например, чтобы узнать, содержить ли одна строка другую строку

  • Вопрос задан более трёх лет назад
  • 4713 просмотров

1 комментарий

Простой 1 комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *