Это экспериментальная технология, часть предложения Harmony (ECMAScript 6).
Поскольку спецификация этой технологии ещё не стабилизировалась, проверьте таблицу совместимости её использования в различных браузерах. Также обратите внимание, что синтаксис и поведение экспериментальной технологии могут быть изменены в будущих версиях браузеров в соответствии с изменениями в спецификации.
Сводка
Метод normalize()
возвращает форму нормализации Юникода данной строки (если значение не является строкой, сначало оно будет в неё преобразовано).
Синтаксис
str.normalize([form])
Параметры
form
- Одно из значений
"NFC"
,"NFD"
,"NFKC"
или"NFKD"
, определяющих форму нормализации Юникода. Если параметр опущен или равенundefined
, будет использоваться значение"NFC"
.NFC
— форма нормализации C.NFD
— форма нормализации D — каноническая декомпозиция.NFKC
— форма нормализации KC.NFKD
— форма нормализации KD — совместимая декомпозиция.
Выбрасываемые исключения
RangeError
- Если параметр
form
не является одним из вышеперечисленных значений, будет выброшено исключениеRangeError
.
Описание
Метод normalize()
возвращает указанную форму нормализации Юникода строки. Он не изменяет значение самой строки.
Примеры
Пример: использование метода normalize()
// Первоначальная строка // U+1E9B: Латинская строчная длинная буква «s» с точкой сверху // U+0323: Комбинируемая подстрочная точка var str = '\u1E9B\u0323'; // Форма нормализации C (NFC) // U+1E9B: Латинская строчная длинная буква «s» с точкой сверху // U+0323: Комбинируемая подстрочная точка str.normalize('NFC'); // '\u1E9B\u0323' str.normalize(); // то же самое // Форма нормализации D - каноническая декомпозиция (NFD) // U+017F: Латинская строчная длинная буква «s» // U+0323: Комбинируемая подстрочная точка // U+0307: Комбинируемая надстрочная точка str.normalize('NFD'); // '\u017F\u0323\u0307' // Форма нормализации KC (NFKC) // U+1E69: Латинская строчная буква «s» с точкой снизу и точкой сверху str.normalize('NFKC'); // '\u1E69' // Форма нормализации KD - совместимая декомпозиция (NFKD) // U+0073: Латинская строчная буква «s» // U+0323: Комбинируемая подстрочная точка // U+0307: Комбинируемая надстрочная точка str.normalize('NFKD'); // '\u0073\u0323\u0307'
Спецификации
Спецификация | Статус | Комментарии |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) Определение 'String.prototype.normalize' в этой спецификации. |
Стандарт | Изначальное определение. |
Совместимость с браузерами
Возможность | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Базовая поддержка | 34 | 31 (31) | 11 на Windows 10 Preview | (Да) | Нет |
Возможность | Android | Chrome для Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Базовая поддержка | Нет | 34 | Нет баг 864843 |
Нет | Нет | Нет |
Смотрите также
Метки документа и участники
Метки:
Внесли вклад в эту страницу:
Mingun,
dtretyakov
Обновлялась последний раз:
Mingun,