Найти тему
CyberHaus

Строки в JavaScript

В JavaScript есть множество встроенных методов для работы со строками. В этой статье мы подробно рассмотрим каждый из этих методов.

Конкатенация строк в JavaScript.

Конкатенация – это склеивание двух и более строк в одну. Есть два способа чтобы склеивать строки. Первый способ - воспользоваться операндом «+». Второй способ - это воспользоваться специальным методом concat.

конкатенация строк
конкатенация строк

Узнать длину строки.

Длину строки можно узнать при помощи свойства length. Точно такое же свойство есть у массивов, которое так же позволяет узнать длину, из-за чего может сложится ложное впечатление, что строка – это массив. На самом же деле строка - это объект, и методы массивов, такие как pop, push и т.д. не работают со строками.

длинна строки
длинна строки

Доступ к символам строки.

Доступ к символам строки можно получить двумя способами. Во первых, по индексу, также как и к элементу массива, а можно при помощи специального метода charAt(). Индексация символов в строке начинается с нуля. Так же есть возможность получить код символа методом charCodeAt().

доступ к символу строки
доступ к символу строки

Поиск подстроки в строке

Для поиска подстроки в строке в JavaScript имеется несколько методов:

1. Метод indxOf() он возвращает индекс первого вхождения подстроки.

2. Метод lastIndexOf() вернет индекс последнего вхождения подстроки.

Оба эти метода вернут -1, если подстрока не найдена.

3. Метод includes() вернет true, если подстрока найдена и false, если не найдена.

4. Метод search(). Этот метод принимает в качестве параметра регулярное выражение, но также можно передать и строку, которая не явно будет преобразована в регулярное выражение. Метод, также как и indexOf, в случае, если подстрока будет найдена, вернет индекс первого вхождения подстроки, в противном случае вернет -1.

положительный результат поиска
положительный результат поиска
отрицательный результат поиска
отрицательный результат поиска

Спецсимволы в строках

Для того чтобы вывести внутри строки спец символ (например перевод строки или табуляцию), используют escape-последовательности.

Все escape-последовательности начинаются с символа обратного слэша "\".

Предположим, что у на есть строка str = "какая-то "строка"". Как видите, слово "строка" взята в кавычки. Если мы попробуем вывести её в таком виде мы получим ошибку, что бы избежать ошибки кавычки надо экранировать str = "какая-то \"строка\""

экранирование кавычек
экранирование кавычек

escape-последовательности:

\n – перевод строки

\t – табуляция

\” – двойная кавычка

\’ – одинарная кавычка

\\ – обратный слэш

escape-последовательности
escape-последовательности

Вырезать часть строки

Вырезать часть строки можно при помощи методов substring() и substr()

Метод substring принимает два параметра. Первый параметр — это индекс начала вырезаемой подстроки, а второй параметр - индекс конца вырезаемой подстроки.

Метод substr также принимает два параметра, но в отличие от метода substring, второй параметр указывает количество вырезаемых символов.

вырезание части строки с передачей двух параметров
вырезание части строки с передачей двух параметров

У обоих методов второй параметр не обязателен. Если его не передавать, то будет вырезана подстрока начиная с символа, индекс которого передан первым параметром и до конца строки.

вырезание части строки с передачей одного параметра
вырезание части строки с передачей одного параметра

По мимо этого, в качестве первого параметра у метода substr можно указать отрицательное число. В этом случае поиск вырезаемой подстроки будет осуществляется с конца строки, а не сначала.

вырезание части строки с передачей отрицательного параметра
вырезание части строки с передачей отрицательного параметра

Оба метода возвращают новую строку.

Поиск и замена подстроки в строке

Для поиска и замены подстроки в строке в JavaScript есть метод replace()

Данный метод принимает два параметра. Первый - это искомая строка, а второй - это строка, на которую надо заменить найденный текст.

поиск и замена подстроки в строке
поиск и замена подстроки в строке

Как видите, замена произошла только один раз. Чтобы сделать замену всех найденных совпадений, необходимо воспользоваться регулярным выражением.

поиск и замена всех совпадений
поиск и замена всех совпадений

Приведение строк к верхнему и нижнему регистру

Метод toLowerCase() приведет все символы строки к нижнему регистру, а метод toUpperCase() приведет все символы строки к верхнему регистру.

приведение символов строки к верхнему и нижнему регистру
приведение символов строки к верхнему и нижнему регистру

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

Сравнить две строки можно при помощи метода localeCompare(). Если строки совпадают, метод вернёт ноль, а если строки не совпадают, то вернется число отличное от нуля.

сравнение двух строк
сравнение двух строк

Преобразование переменных других типов в строку

Преобразовать переменную другого типа в строку можно двумя способами: при помощи метода toString() или вызвав объект String() и передав ему в качестве аргумента переменную, которую требуется преобразовать.

приведение к строке
приведение к строке