# JavaScript中的键盘事件
当用户按下按键时,浏览器会触发三个事件:keydown、keypress和keyup。每个都暴露有关按下的按键的信息的属性,但并非所有属性都是等效或推荐的。# 按键事件属性
event.code — 物理按键
使用QWERTY命名法返回键盘上按键物理位置的标识符。例如,AZERTY键盘上的"A"键返回KeyQ。对于位置重要而不是字符的游戏控制非常理想。
event.key — 生成的字符
返回根据语言和活动修饰符生成的字符值。按Shift+A返回"A";没有Shift时返回"a"。对于特殊按键,返回名称如"Enter"、"Escape"、"ArrowUp"。
# 何时使用每个属性
event.code,对于检测特定字符或语义键盘快捷方式(如Ctrl+C)使用event.key。 event.which和event.keyCode属性被正式弃用。尽管现代浏览器为了兼容性继续支持它们,但不应在新代码中使用它们。