我需要获取大括号开头的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/