Выбрать главу

Если символ «\» предшествует любому символу, отличному от приведенных в табл. 3.1, обратный слэш просто игнорируется (хотя будущие версии могут, конечно, определять новые управляющие последовательности). Например, \# - это то же самое, что и #. Наконец, как отмечалось выше, стандарт ECMAScript 5 позволяет добавлять в многострочные строковые литералы символ обратного слэша перед разрывом строки.

Таблица 3.1. Управляющие последовательности JavaScript
Последовательность Представляемый символ
Символ NUL (\u0000)
«Забой» (\u0008)
\t Горизонтальная табуляция (\u0009)
\n Перевод строки (\u000А)
\v Вертикальная табуляция (\u000В)
\f Перевод страницы (\u000С)
\r Возврат каретки (\u000D)
\" Двойная кавычка (\u0022)
\' Одинарная кавычка (\u0027)
\\ Обратный слэш (\u005C)
\хХХ Символ Latin-1, заданный двумя шестнадцатеричными цифрами XX
\uxXXXX Символ Unicode, заданный четырьмя шестнадцатеричными цифрами хххх

3.2.3. Работа со строками

Одной из встроенных возможностей JavaScript является способность конкатенировать строки. Если оператор + применяется к числам, они складываются, а если к строкам - они объединяются, при этом вторая строка добавляется в конец первой. Например:

msg = "Hello, " + "world"; // Получается строка "Hello, world"

greeting = "Добро пожаловать на мою домашнюю страницу," + " " + name;

Для определения длины строки - количества содержащихся в ней 16-битных значений - используется свойство строки length. Например, длину строки s можно получить следующим образом:

s.length

Кроме того, в дополнение к свойству length строки имеют множество методов (как обычно, более полную информацию ищите в справочном разделе):

var s = "hello, world"    // Начнем с того же текста.

s.charAt(0)               // => "h": первый символ.

s.charAt(s.length-1)      // => "d": последний символ.

s.substring(1,4)          // => "ell": 2-й, 3-й и 4-й символы.

s.slice(1,4)              // => "ell": то же самое

s.slice(-3)               // => "rld": последние 3 символа

s.indexOf("l")            // => 2: позиция первого символа l.

s.lastlndexOf('l')        // => 10: позиция последнего символа l.

s.indexOf("l", 3)         // => 3: позиция первого символа ”1", следующего

                          // за 3 символом в строке

s.split(",")              // => ["hello", "world"] разбивает на подстроки

s.replace("h", "H")       // => "Hello, world": замещает все вхождения подстроки

s.toUpperCase()           // => "HELLO, WORLD"