Javascript String.fromCharCode()是如何实现的?
它接受一个整数并返回相应的字符(字符串),但该字符的代码与输入完全相同Javascript String.fromCharCode()是如何实现的?,javascript,string,Javascript,String,它接受一个整数并返回相应的字符(字符串),但该字符的代码与输入完全相同 引擎盖下面发生了什么?它真的只是返回它接受的东西吗?还是有其他逻辑 我相信它只是维护了一个ASCII代码字典,并为输入整数返回字符{value}fromCharCode用于将Unicode数字转换为字符。Unicode65是字符A。因此String.fromCharCode(65)返回A 引擎盖下面发生了什么事? 实现可以是带有键值对的HashMap,其中Unicode值映射到相应的字符,也可以是switch语句,它接受Un
引擎盖下面发生了什么?它真的只是返回它接受的东西吗?还是有其他逻辑 我相信它只是维护了一个ASCII代码字典,并为输入整数返回字符{value}
fromCharCode
用于将Unicode数字转换为字符。Unicode65
是字符A
。因此String.fromCharCode(65)
返回A
引擎盖下面发生了什么事?
实现可以是带有键值对的HashMap
,其中Unicode值映射到相应的字符,也可以是switch
语句,它接受Unicode
并返回字符
使用开关实现的伪代码
:
var x = String.fromCharCode(65);
console.log(x); //returns "A"
看看@源代码
fromCharCode在中定义
它使用
unitStringTable
进行映射。该表是通过预处理器指令定义的…谢谢!我知道它是干什么的!我对它是如何实现的很感兴趣。。。(在JS解释器中)您可以查看规范:。
function fromCharCode(*args)
{
return args.map(unicodeToChar).join('')
}
function unicodeTochar(unicode)
{
switch(unicode)
{
//something
case 65:
return 'A'
case 66:
return 'B'
//something
}
}