JavaScript. Подробное руководство, 6-е издание, стр. 21
<b><button onclick="alert('Спасибо')">Щелкни на мнe</button></b>3.2.2. Управляющие последовательности в строковых литералах
Символ обратного слэша (
<b>\</b><b>\n</b>Другой пример, упомянутый выше, - это последовательность
<b>\'</b><b>'You\'re right, it can\'t be a quote'</b>В табл. 3.1 перечислены управляющие последовательности JavaScript и обозначаемые ими символы. Две управляющие последовательности являются обобщенными; они могут применяться для представления любого символа путем указания кода символа из набора Latin-І или Unicode в виде шестнадцатеричного числа. Например, последовательность \хА9 обозначает символ копирайта, который в кодировке Latin-І имеет шестнадцатеричный код А9. Аналогично управляющая последовательность, начинающаяся с символов \и, обозначает произвольный символ Юникода, заданный четырьмя шестнадцатеричными цифрами. Например, \u03c0 обозначает символ л.
Если символ «\» предшествует любому символу, отличному от приведенных в табл. 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 является способность конкатенировать строки. Если оператор + применяется к числам, они складываются, а если к строкам - они объединяются, при этом вторая строка добавляется в конец первой. Например:
<b>msg = "Hello, " + "world"; // Получается строка "Hello, world" </b><b>greeting = "Добро пожаловать на мою домашнюю страницу," + " " + name;</b>Для определения длины строки - количества содержащихся в ней 16-битных значений - используется свойство строки
<b>length</b><b>s.length</b>Кроме того, в дополнение к свойству
<b>length</b><b>var s = "hello, world" // Начнем с того же текста.</b><b>s.charAt(0) // => "h": первый символ.</b><b>s.charAt(s.length-1) // => "d": последний символ.</b><b>s.substring(1,4) // => "ell": 2-й, 3-й и 4-й символы.</b><b>s.slice(1,4) // => "ell": то же самое</b><b>s.slice(-3) // => "rld": последние 3 символа</b><b>s.indexOf("l") // => 2: позиция первого символа l.</b><b>s.lastlndexOf('l') // => 10: позиция последнего символа l.</b><b>s.indexOf("l", 3) // => 3: позиция первого символа ”1", следующего</b><b> // за 3 символом в строке</b><b>s.split(",") // => ["hello", "world"] разбивает на подстроки</b><b>s.replace("h", "H") // => "Hello, world": замещает все вхождения подстроки</b><b>s.toUpperCase() // => "HELLO, WORLD"</b>Не забывайте, что строки в JavaScript являются неизменяемыми. Такие методы, как
<b>герlасе()</b><b>toUpperCase()</b>В стандарте ECMAScript 5 строки могут интерпретироваться как массивы, доступные только для чтения, и вместо использования метода charAt() к отдельным символам (16-битным значениям) строки можно обращаться с помощью индексов в квадратных скобках: