Специальные символы JavaScript 1.0

Вы можете включать в строки cследующие специальные символы (все они должны находиться внутри строки в кавычках):

Символ Значение
\0 Нуль
\b Backspace
\f Form feed/Прогон страницы
\n New line/Символ новой строки
\r Carriage return/Возврат каретки
\t Tab/Табуляция
\v Vertical tab/Вертикальная табуляция
\' Апостроф или одинарная кавычка
\" Двойная кавычка
\\ Символ "обратная наклонная линия"Backslash (\)
\XXX Символ в кодировке Latin -1, специфицированный тремя 8-ричными цифрами XXX в диапазоне от 0 до 377. Например, \251 это 8-ричная последовательность для символа ©
\xXX Символ в кодировке Latin -1, специфицированный двумя 16-ричными цифрами XX от 00 до FF. Например, \xA9 это 16-ричная последовательность для символа ©
\uXXXX Символ Unicode, специфицированный четырьмя 16-ричными цифрами XXXX. Например, \u00A9 это Unicode-последовательность для символа ©

Internet Explorer распознает символ "\v" только в регулярных выражениях

Пример
"одна строка \n вторая строка"

UNICODE JavaScript 1.3.

Unicode - это стандарт универсального кодирования для отображения основных языков и видов письма. Он покрывает языки Америки, Европы, Среднего Востока, Африки, Индии, Азии и Океании, а также исторические виды письма и технические символы. Unicode позволяет передавать, обрабатывать и отображать многоязычные тексты, а также использовать общепринятые технические и математические символы. Предполагается, что этот стандарт должен разрешить проблемы интернационализации в многоязычной компьютерной среде, такие как различия в национальных стандартах кодировки символов. В настоящее время, однако, поддерживаются не все современные и архаичные виды письма.

Набор символов Unicode может использоваться для всех известных кодировок. Unicode смоделирован после ASCII-набора символов (American Standard Code for Information Interchange). Он использует числовое значение и имя для каждого символа. Кодировка символов специфицирует идентификатор символа и его числовое значение (кодовую позицию), а также битовое представление этого значения. 16-битное числовое значение (кодовое значение) определяется 16-ричным числом и префиксом U, например, U+0041 представляет символ A. Уникальное имя этого символа - LATIN CAPITAL LETTER A.

Unicode не поддерживается в версиях, более ранних, чем JavaScript 1.3.

Совместимость Unicode с ASCII и ISO:

Unicode совместим с символами ASCII и поддерживается многими программами. Первые 128 символов Unicode соответствуют набору ASCII и имеют те же битовые значения. Символы Unicode с U+0020 до U+007E эквивалентны ASCII-символам с 0x20 по 0x7E. В отличие от ASCII, который поддерживает латинский алфавит и использует набор 7-битных символов, Unicode использует 16-битное значение для каждого символа. Это даёт возможность отобразить десятки тысяч символов. Поддерживается также механизм расширения, UTF-16, который позволяет кодировать более миллиона символов путём использования пар 16-битных символов. UTF переводит кодировку в реальные биты.

Unicode полностью совместим с Международным Стандартом ISO/IEC 10646-1; 1993, который является поднабором ISO 10646, а также поддерживает ISO UCS-2 (Universal Character Set), который использует двухбайтные значения (два байта, или 16 битов).

JavaScript и Navigator поддерживают Unicode, Это означает, что Вы можете использовать не-Latin, международные и локализованные символы, плюс специальные технические символы в программах на JavaScript. Unicode предоставляет возможность стандартного кодирования многоязыковых текстов. Поскольку Unicode совместим с ASCII, программы могут использовать символы ASCII. Вы можете использовать не-ASCII Unicode-символы в комментариях, строковых литералах, идентификаторах и регулярных выражениях JavaScript.

Escape-Последовательности Unicode:

Вы можете использовать заменяющие последовательности Unicode в строковых литералах, регулярных выражениях и идентификаторах. Заменяющая (escape) последовательность состоит из шести символов ASCII: \u и 16-ричного числа из четырёх цифр. Например, \u00A9 представляет символ copyright. Каждая escape-последовательность Unicode интерпретируется в JavaScript как одиночный символ.

Следующий код возвращает символ © и строку "Netscape Communications":

x="\u00A9 Netscape Communications"

В таблице приведён список часто используемых специальных символов и их значения Unicode.

Категория Значение Unicode Имя Форматное имя
Пробельные символы \u0009 Табуляция <TAB>
\u000B Вертикальная табуляция <VT>
\u000C Прогон страницы <FF>
\u0020 Пробел <SP>
\u00A0 Неразрывный пробел  
Значения конца строки \u000A Прогон строки <LF>
\u000D Возврат каретки <CR>
\u2028 Разделитель строк  
\u2029 Разделитель абзацов  
Дополнительные последовательности Unicode \u0000 Нуль <NUL>
\u0008 Backspace <BS>
\u0009 Горизонтальная табуляция <HT>
\u0022 Двойная кавычка "
\u0027 Одинарная кавычка '
\u005C Backslash \

Использование escape-последовательнотей Unicode в JavaScript отличается от Java. В JavaScript escape-последовательность сразу никогда не интерпретируется как спецсимвол. Например, последовательность терминатора строки внутри строки не оканчивает строку до того, как она будет интерпретирована функцией. JavaScript игнорирует любую escape-последовательность, если она находится в комментарии. В Java, если escape-последовательность используется в однострочном комментарии, она интерпретируется как символ Unicode. В строковом литерале компилятор Java сначала интерпретирует escape-последовательности. Например, если последовательность "терминатор строки" (\u000A) используется в Java, она оканчивает строковой литерал. В Java это приводит к ошибке, поскольку терминаторы строки не допускаются в строковых литералах. Вы обязаны использовать \n в строковом литерале в качестве символа новой строки. В JavaScript escape-последовательность работает так же, как \n

Отображение Символов Unicode

Вы можете использовать Unicode для отображения символов на разных языках или технических символов. Чтобы правильно отображать символы, клиент, такой как Netscape Navigator 4.x или Netscape 6, должен поддерживать Unicode. Кроме того, нужный Unicode-шрифт обязан быть доступен клиенту, а клиентская платформа (ОС) обязана поддерживать Unicode. Часто шрифты Unicode не отображают всех символов Unicode. Некоторые платформы, такие как Windows 95, предоставляют частичную поддержку Unicode.

Чтобы принять ввод не-ASCII символов, необходимо пересылать ввод клиенту как Unicode. Используя стандартную расширенную клавиатуру, клиент не может легко ввести дополнительные символы, поддерживаемые Unicode. Иногда единственным способом ввести символы Unicode будет использование escape-последовательностей Unicode.

Дополнительную информацию о Unicode см. на вэб-сайте Консорциума Unicode и в книге The Unicode Standard, Version 2.0, опубликованной издательством Addison-Wesley в 1996 году.

Пример
"одна строка \n вторая строка"


HIVE: All information for read only. Please respect copyright!
Hosted by hive КГБ: Киевская городская библиотека