拿这个代码:
var charCode = unkownVariable.charCodeAt(0);
最大长度charCode
是多少?我所有的测试结果都是 2 个字符(2 个数字)。它会更长吗?
拿这个代码:
var charCode = unkownVariable.charCodeAt(0);
最大长度charCode
是多少?我所有的测试结果都是 2 个字符(2 个数字)。它会更长吗?
从规范:
返回一个数字(一个小于 2 16
pos
的非负整数),表示将该对象转换为字符串后在字符串中的位置处的字符的代码单元值。如果该位置没有字符,则结果为NaN
。
因此,2 16 - 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