Códigos de tecla·KeyP
p
KeyP
keyCode 80

Tecla KeyP — keyCode 80 (JS)

Letras

KeyP tem keyCode 80 e key "p", em location 0.

A posição é fixa como KeyA. Mesmo que saia um ㅁ coreano, o code continua KeyA.

code (posição)
KeyP
key (layout dos EUA)
"p"
Com Shift
"P"
keyCode (obsoleto)
80
Hexadecimal
0x50
location
0 · Padrão
Digita um caractere
Sim
Divide keyCode com
Nenhum

No código

Comparar com code continua funcionando mesmo se o layout mudar.

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

code versus key

code é a posição física, a mesma num teclado coreano ou francês. key é o que se digita e muda — o mesmo lugar dá a, A ou ㅁ. Use code para saber qual lugar foi pressionado e key para saber o que entrou.

keyCode saiu do padrão. Escreva código novo com code ou key; os números daqui servem para ler código antigo.

Teclas do mesmo tipo

Como ler

  • code é a posição e key o caractere digitado. Para atalhos, compare com code.
  • keyCode está obsoleto; use apenas para ler código antigo.
  • Shift esquerdo e direito dividem o keyCode e se separam por location.
  • O 1 da linha e o 1 do teclado numérico são teclas diferentes: 49 e 97.

Perguntas frequentes

Q. Qual é o keyCode de KeyP?

80, ou 0x50 em hexadecimal.

Q. Como detecto KeyP no código?

Compare com e.code === 'KeyP'. Comparar por keyCode oscila entre navegadores e layouts.

Q. Qual é o location desta tecla?

0.

Q. Esta tecla digita um caractere?

Sim: key é "p", e "P" com Shift.