Статичний метод String.fromCharCode()
повертає рядок, створений з послідовності кодових одиниць Unicode переданих цілими числами.
Синтаксис
String.fromCharCode(num1[, ...[, numN]])
Параметри
num1, ..., numN
- Послідовність цілих чисел, кожне з яких подає окрему кодову одиницю Unicode.
Вертає
Рядок із символів, що відповідають переданій послідовності значень (кодових одиниць) Unicode.
Опис
Цей метод вертає власне рядок, що належить до простого типу даних, а не об'єкт класу
.String
Позаяк fromCharCode()
є статичним методом класу
, він зазвичай використовується як String
String.fromCharCode()
, а не як метод створеного об'єкта класу.
Приклади
Використання fromCharCode()
Наведений вираз повертає рядок "Віко":
// вертає "Віко"
String.fromCharCode(0x412, 0x456, 0x43A, 0x43E);
Обробка значень понад 0xFFFF
Попри свою назву, метод фактично приймає не коди символів, а саме кодові одиниці. Тобто символи, коди яких перевищують значення 0xFFFF (діапазон UCS-2), доведеться передавати двома кодовими одиницями:
Наприклад, символ з кодом U+1F341 «MAPLE LEAF» доведеться подавати як послідовність кодових одиниць 0xD83C та 0xDF41:
// виводить символ U+1F341 «MAPLE LEAF»
console.log(String.fromCharCode(0xD83C, 0xDF41));
Більшість символів Unicode можна передати значеннями одного 16-розрядного числа (як передбачалося на початку стандартизації JavaScript), тож fromCharCode()
можна застосовувати для створення рядків із найпоширенішими символами (UCS-2 є підмножиною UTF-8, що містить найбільш вживані символи), проте для потреб передачі всіх можливих символів (кодуються 21 двійковим розрядом) лише методу fromCharCode()
недостатньо. Позаяк символи з кодами вищими за 0xFFFF подаються так званими «сурогатними парами» (двома окремими кодовими одиницями), можна використати
(є частиною стандарту ES2015), що належним чином перетворить вищі коди символів на такі пари:String.fromCodePoint()
// виводить true
console.log(String.fromCharCode(0xD83C, 0xDF41) === String.fromCodePoint(0x1F341));
Специфікації
Специфікація | Статус | Коментар |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Первинне визначення. Реалізовано у JavaScript 1.2. |
ECMAScript 5.1 (ECMA-262) The definition of 'StringfromCharCode' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'String.fromCharCode' in that specification. |
Standard | |
ECMAScript (ECMA-262) The definition of 'String.fromCharCode' in that specification. |
Living Standard |
Підтримка веб-переглядачами
BCD tables only load in the browser