如何使用javascript将keycode转换为字符

如何使用javascript将keycode转换为字符,javascript,variables,keycode,Javascript,Variables,Keycode,如何使用javascript将keycode转换为字符 var key_code = 65; 结果应该是 character = "a"; 这就是你想要的: fromCharCode()方法将Unicode值转换为字符 语法 如图所示: String.fromCharCode((96)注意String.fromCharCode(65)='A',要获得'A',需要调用.toLowerCase()。仅当您拥有“密钥代码”来自keypress事件。在keyup和keydown事件中,keyCode

如何使用javascript将keycode转换为字符

var key_code = 65;
结果应该是

character = "a";
这就是你想要的:

fromCharCode()方法将Unicode值转换为字符

语法 如图所示:


String.fromCharCode((96)注意String.fromCharCode(65)='A',要获得'A',需要调用.toLowerCase()。仅当您拥有“密钥代码”来自
keypress
事件。在
keyup
keydown
事件中,
keyCode
属性与字符无关。keydown事件中的keyCode属性是与String.fromCharCode()一起使用的正确组合。它对我来说不是字符码。@Arrix:是的,那么你怎么知道是否需要调用toLowerCase()?你不能只查看event.shiftKey,因为对于“!”@Michael这样的键,这将失败。我建议在搜索特定字母时始终使用.toLowerCase()(如示例字符串中的。fromCharCode(65)=“a”)。尝试将小写字母转换为小写字母时没有引发任何错误。值得记住的是(我说的“健康”是指理智)…自提出此问题以来,情况有所好转,但仍然是一个非常痛苦的问题。您能否详细说明此代码的作用或检查方法?此代码将numpad 0的Windows numpad键码映射到numpad 9(96到105)转换为字符代码48到57,允许该方法将它们转换回其基础值“0”到“9”。这对Mac没有影响,因为numpad数字已经映射到48到57。
String.fromCharCode(n1, n2, ..., nX)
String.fromCharCode((96 <= key && key <= 105) ? key-48 : key)