Key codes·KeyO
o
KeyO
keyCode 79

KeyO key code — keyCode 79

Letters

KeyO has keyCode 79 and key "o", at location 0.

The position is fixed as KeyA. Even when a Hangul ㅁ is typed, the code is still KeyA.

code (position)
KeyO
key (US layout)
"o"
With Shift
"O"
keyCode (deprecated)
79
Hexadecimal
0x4F
location
0 · Standard
Types a character
Yes
Shares keyCode with
None

In code

Comparing against code keeps working when the layout changes.

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

code versus key

code is the physical position, the same on a Korean or French keyboard. key is what gets typed and changes — the same spot gives a, A or ㅁ. Use code to ask which spot was pressed, key to ask what was entered.

keyCode has been dropped from the standard. Write new code against code or key; the numbers here are for reading old code.

Keys of the same kind

How to read this

  • code is the position, key is the character typed. Match on code for shortcuts.
  • keyCode is deprecated; use it only to read old code.
  • Left and right Shift share a keyCode and are told apart by location.
  • The 1 on the number row and the 1 on the numpad are different keys — 49 and 97.

Frequently asked questions

Q. What is the keyCode for KeyO?

79, or 0x4F in hexadecimal.

Q. How do I match KeyO in code?

Compare with e.code === 'KeyO'. Matching on keyCode wobbles between browsers and layouts.

Q. What is this key's location?

0.

Q. Does this key type a character?

Yes — key is "o", and "O" with Shift held.