Javascript charCodeAt为逗号生成错误的代码
为什么代码:Javascript charCodeAt为逗号生成错误的代码,javascript,Javascript,为什么代码: ','.charCodeAt(0); 生成44,即使逗号的charcode是188(在keyup处理程序中获取event.keyCode时和之前都是如此)。字符和键是不同的东西 返回字符的数字Unicode值。 来自的keyCode表示键盘上的键 由于字符和键之间没有1:1映射,因此它们不一定使用相同的值。charCodeAt()返回字符的ascii值44是逗号的ascii码。有关详细信息,请参阅。字符和键是两种不同的东西。这就是为什么他们不一定有相同的代码。我理解这种混淆,特别
','.charCodeAt(0);
生成
44
,即使逗号的charcode是188
(在keyup
处理程序中获取event.keyCode
时和之前都是如此)。字符和键是不同的东西
返回字符的数字Unicode值。来自的
keyCode
表示键盘上的键
由于字符和键之间没有1:1映射,因此它们不一定使用相同的值。
charCodeAt()
返回字符的ascii值44
是逗号的ascii码。有关详细信息,请参阅。字符和键是两种不同的东西。这就是为什么他们不一定有相同的代码。我理解这种混淆,特别是当有一些问题,例如,被接受的答案在哪里混淆了这两个术语,而其他答案包含过时的信息。这些最好是清理干净。@gre_gor请回答这个问题。我现在觉得有点傻。谢谢你的回答(如果你们中有人能从你的评论中做出实际的回答,我会很高兴地正式接受)。似乎我必须以其他方式将keycodes“转换”为char,如果必须将keycodes映射为charcode,则可以通过数组来实现。不过,您必须自己编写实现,它不是内置的。