我需要获取大括号开头的char代码值。

我使用了"{".charCodeAt(0),但它返回123,

但是,如果我从键盘事件中获得该值,则该值为219。哪一个是正确的?
请告诉我如何获取大括号的正确值

最佳答案

是的,根据wikipedia,{的unicode值是123(0x7B)。

但是,Keyboard.event中的keyCode属性不是Unicode值,请参见KeyboardEvent documentation on MDN。人们陷入将其用作字符值的陷阱,因为没有shift修饰符,许多值实际上是相同的。

KeyboardEvent.keyCode


  依赖于系统和实现的数字代码
  按键的未修改值。只读。见文件
  详细信息的KeyboardEvent.keyCode。


您需要掌握实际角色。关于该主题有很多问题like this one

一种方法是使用String.fromCharCode(e.which),它将在大多数浏览器中正常工作,但仅适用于来自keypress而不是keydown或keyup处理程序的KeyboardEvent。

按键和按键之间的区别

document.body.addEventListener("keydown", function(e) {console.log(e.keyCode)}, false);

 219


鉴于

document.body.addEventListener("keypress", function(e) {console.log(e.keyCode)}, false);

123

关于javascript - 获取打开花括号的字符代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25758171/

10-13 04:22