Códigos de tecla·KeyB
b
KeyB
keyCode 66

Tecla KeyB — keyCode 66

Letras

KeyB tiene keyCode 66 y key "b", en location 0.

La posición está fijada como KeyA. Aunque se escriba un ㅁ coreano, el code sigue siendo KeyA.

code (posición)
KeyB
key (distribución EE. UU.)
"b"
Con Shift
"B"
keyCode (obsoleto)
66
Hexadecimal
0x42
location
0 · Estándar
Escribe un carácter
Comparte keyCode con
Ninguno

En código

Comparar contra code sigue funcionando aunque cambie la distribución.

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

code frente a key

code es la posición física, igual en un teclado coreano o francés. key es lo que se escribe y cambia: el mismo sitio da a, A o ㅁ. Usa code para saber qué sitio se pulsó y key para saber qué se escribió.

keyCode quedó fuera del estándar. Escribe código nuevo con code o key; los números de aquí sirven para leer código antiguo.

Teclas del mismo tipo

Cómo leerlo

  • code es la posición y key el carácter escrito. Para atajos, compara con code.
  • keyCode está obsoleto; úsalo solo para leer código antiguo.
  • Shift izquierdo y derecho comparten keyCode y se distinguen por location.
  • El 1 de la fila y el 1 del teclado numérico son teclas distintas: 49 y 97.

Preguntas frecuentes

Q. ¿Cuál es el keyCode de KeyB?

66, o 0x42 en hexadecimal.

Q. ¿Cómo detecto KeyB en código?

Compara con e.code === 'KeyB'. Comparar con keyCode baila entre navegadores y distribuciones.

Q. ¿Cuál es el location de esta tecla?

0.

Q. ¿Esta tecla escribe un carácter?

Sí: key es "b", y "B" con Shift.