В 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 – табуляция
\” – двойная кавычка
\’ – одинарная кавычка
\\ – обратный слэш
Вырезать часть строки
Вырезать часть строки можно при помощи методов substring() и substr()
Метод substring принимает два параметра. Первый параметр — это индекс начала вырезаемой подстроки, а второй параметр - индекс конца вырезаемой подстроки.
Метод substr также принимает два параметра, но в отличие от метода substring, второй параметр указывает количество вырезаемых символов.
У обоих методов второй параметр не обязателен. Если его не передавать, то будет вырезана подстрока начиная с символа, индекс которого передан первым параметром и до конца строки.
По мимо этого, в качестве первого параметра у метода substr можно указать отрицательное число. В этом случае поиск вырезаемой подстроки будет осуществляется с конца строки, а не сначала.
Оба метода возвращают новую строку.
Поиск и замена подстроки в строке
Для поиска и замены подстроки в строке в JavaScript есть метод replace()
Данный метод принимает два параметра. Первый - это искомая строка, а второй - это строка, на которую надо заменить найденный текст.
Как видите, замена произошла только один раз. Чтобы сделать замену всех найденных совпадений, необходимо воспользоваться регулярным выражением.
Приведение строк к верхнему и нижнему регистру
Метод toLowerCase() приведет все символы строки к нижнему регистру, а метод toUpperCase() приведет все символы строки к верхнему регистру.
Сравнение двух строк
Сравнить две строки можно при помощи метода localeCompare(). Если строки совпадают, метод вернёт ноль, а если строки не совпадают, то вернется число отличное от нуля.
Преобразование переменных других типов в строку
Преобразовать переменную другого типа в строку можно двумя способами: при помощи метода toString() или вызвав объект String() и передав ему в качестве аргумента переменную, которую требуется преобразовать.