Основы JavaScript: Строки

Основы JavaScript: Строки

От автора: В JavaScript строкой считается любой текст, заключенный в одинарные или двойные кавычки, включая буквы, цифры и Юникод символы. В статье мы с вами познакомимся с работой со строками в JavaScript.

Итак, в JavaScript строкой считается любой текст, заключенный в одинарные или двойные кавычки, включая буквы, цифры и Юникод символы:

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

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

В остальных случаях кавычки и другие специальные символы внутри строк должны экранироваться с помощью обратного слеша (ниже примеры результата, который получается при экранировании):

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

\» — двойная кавычка

\\ — обратный слеш

\n — новая строка

\r — возврат каретки

\t — таб

Например:

Поскольку строки могут содержать Юникод символы, по возможности следует использовать настоящие «умные» кавычки и апострофы:

Индексирование строк

Как и в случае с массивами, считается, что первый символ строки находится на нулевой позиции, второй — на первой и т.д. Обратите внимание на то, что свойство length у строк учитывает каждый символ, включая пробелы, но не включая экранированные символы:

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

Числа в качестве строк

Иногда вы будете получать число, которое JavaScript почему-то не будет воспринимать, как число. Хорошим примером этого служит HTML5 поле ввода типа number:

Если мы попробуем просто считать это значение в JavaScript и прибавить к нему единицу:

… то результат, который мы получим в консоли при вводе единицы в поле ввода, будет равен не «2», а «11». Это вызвано проблемой с конкатенацией: метод value обрабатывает полученное из поля ввода значение не как число, а как строку. Существует два способа, как это исправить:

Использовать правильный метод для данного случая: weight.valueAsNumber, вместо weight.value. В результате мы получим настоящее число.

Оставить метод value, но привести полученное значение к нужному типу с помощью parseInt:

Я расскажу более подробно о parseInt в одной из следующих статей.

Конвертирование чисел в строки

Иногда вам потребуется сделать обратное: сконвертировать число в строку. Если у меня есть переменная wonders:

… Я могу превратить ее в строку, используя метод .toString():

… или добавив к ней пустую строку:

Можно использовать оба способа, хотя второй может оказаться быстрее при работе с циклами (когда речь идет о миллионах операций).

Автор: Dudley Storey

Источник: //demosthenes.info/

Редакция: Команда webformyself.

Метки:

Похожие статьи:

Комментарии Вконтакте: