Закрыть
Вход на сайт
Регистрация
Вы успешно зарегистрировались!

Перейти к обучению
Регистрация
Войти на сайт

JavaScript
Работа со строками

В этом уроке мы немного поработаем со строками. Что значит? У нас есть строковая переменная и мы можем ее как-то преобразовать или получить от нее какую-то информацию. Поехали:

1) .length - Длина строки

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

var str='Строковая переменная'
var length=str.length //20

Таким же образом мы можем узнать длину массива. Только выводится будет не количество символов, а количество элементов в массиве. 

Давайте рассмотрим пример, где мы можем использовать длину строки. 

Как правило, если у нас есть массив, то его придется перебрать. То есть получить по очереди каждое значение элементов массива. Это делается следующим образом:

var a = ["a", "b", "c"];

for (var i = 0; i < a.length; ++i) {

  console.log(a[i]);

}

Что тут происходит? Мы создаем цикл, который начинается от нуля и идет до тех пор, пока i не увеличится до значения длины массива. А длину мы как раз и получаем за счет метода length.

Дальше, в теле цикла, имея переменную i, мы можем получить соответствующий элемент из массива. 

2) .split() - превращает строковую переменную в массив. 

Ого, скажете вы! Строку в массив? Да-да! Но для этого в строке должен быть какой-то разделитель который поделит строку на элементу. Например: 

var str='1/2/3/4/5';

var array=str.split('/') // [1,2,3,4,5]

Разбираем: в строковой переменной есть знак "/". Он будет выступать в роли разделителя. То есть строковая часть от знака до знака станет элементом массива, а сам знак уберется. Чтобы split переварил данную инфу, ему необходимо передать знак, который мы будем использовать. Ну а дальше он подумает и выдаст вам новый массив. 

Это удобно использовать, когда необходимо передать информацию куда-то далеко и где массивы не передаются. Вы собираете строку, а в точке назначения разбираете ее в массив. 

3) toLowerCase() и toUpperCase() - верхний и нижний регистры букв.

Это аналоги text-decoration: transform и lowercase. Поэтому, думаю, понятно как работает и объяснять не буду. Если забыли, то вернитесь к этому уроку: ссылка

4) replace - подмена текста в строке

Допустим, вы хотите в строке кусочек текста изменить на другой текст. Тогда и понадобится нам этот метод. 

var str = '+7 (930) 402-98-60'.replace("-", "_"); //+7 (930) 402_98-60

В данном примере мы знак "-" заменяем на "_". Но заменился только первый знак. Чтобы заменить все, необходимо использовать регулярные выражения. Это очень сложная и большая отдельная тема, но в двух слова, регулярные выражения - это способ поиска в строке других строк по заготовленным шаблонам. 

var str = '+7 (930) 402-98-60'.replace(/-/g, "_"); //+7 (930) 402_98_60

/-/g - это и есть регулярное выражение, которое ищет в строке все знаки "-". 


На самом деле, тема обработки строк гораздо более обширная. Этот урок я сделал по большей части для того, чтобы рассказать вам про length, так как мы его будем использовать очень часто, и обозначить факт того, что js не плохо умеет обрабатывать строки. В процессе разработки, гугления и поиска решений ваших ситуаций, вы не раз столкнетесь с новыми методами, которые занимаются обработкой строк. 

Предыдущий урок Следующий урок