键码·Minus
-
Minus
keyCode 189

Minus 键码 — keyCode 189

符号

Minus 的 keyCode 是 189,key 是 "-",location 为 0。

keyCode 在各家浏览器里分道扬镳的,就是这一片。

Firefox 对这个键给的是 173。符号键的 keyCode 在各家浏览器并不一致。

code(位置)
Minus
key(美式布局)
"-"
按住 Shift
"_"
keyCode(已废弃)
189
十六进制
0xBD
location
0 · 标准
是否输入字符
共用 keyCode

在代码里

用 code 比较,换了键盘布局也还能抓住同一个位置。

window.addEventListener('keydown', e => {
  if (e.code === 'Minus') {
    // -
  }
});

code 与 key 的区别

code 是键盘上的物理位置,韩文键盘还是法文键盘都一样。key 是当下敲出来的字符,会变——同一个位置可能是 a、A 或 ㅁ。问“按了哪个位置”用 code,问“输入了什么”用 key。

keyCode 已从标准中移除。新代码请用 code 或 key,这里的数字用来读旧代码。

同类的键

怎么看这一页

  • code 是位置,key 是敲出来的字符。做快捷键要按 code 比较。
  • keyCode 已废弃,只在读旧代码时用。
  • 左右 Shift 的 keyCode 相同,靠 location 区分。
  • 数字行的 1 和小键盘的 1 是两个键——49 和 97。

常见问题

Q. Minus 的 keyCode 是多少?

189,十六进制是 0xBD。

Q. 代码里怎么判断 Minus?

用 e.code === 'Minus' 比较。用 keyCode 判断,会随浏览器和键盘布局摇摆。

Q. 这个键的 location 是多少?

0。

Q. 按这个键会输入字符吗?

会,key 是 "-",按住 Shift 则是 "_"。