String.charCodeAt Максимальная длина

Возьми этот код:

var charCode = unkownVariable.charCodeAt(0);

Какова максимальная длина charCode может быть? Все мои тесты оказались 2-значными (2 цифры). Будет ли это когда-нибудь дольше?

3 ответа

Решение

Из спецификации:

Возвращает число (неотрицательное целое число меньше 216), представляющее значение единицы кода для символа в позиции pos в строке, полученной в результате преобразования этого объекта в строку. Если в этой позиции нет символа, результат NaN,

Итак, 216 - 1 - это максимальное значение, которое 65535,

Краткий ответ: да.

var unkownVariable = 'test';
var charCode = unkownVariable.charCodeAt(0);
console.log(charCode); // 116

Для отображения символов используется 16 бит (есть разные языки и кодировки), поэтому теоретически ответ может быть в диапазоне от 0 до 65536 (2^16).

MDN говорит

Обратите внимание, что charCodeAt всегда будет возвращать значение, которое меньше 65 536.

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/charCodeAt

Другие вопросы по тегам