Código de tecla Delete en JavaScript

Para Delete, event.key es Delete, event.code es Delete y el keyCode obsoleto es 46. Pulsa cualquier tecla en el Key Code Finder para ver sus valores en vivo.

Actualizado el

PropiedadValor
event.keyDelete
event.codeDelete
event.keyCode / which (obsoleto)46

Cómo detectar Delete

document.addEventListener('keydown', (event) => {
  if (event.key === "Delete") {
    // Delete was pressed
  }
});

Usa event.key para reaccionar al significado de la tecla (sigue la distribución del teclado) y event.code para su posición física, por ejemplo WASD en juegos. keyCode y which están obsoletas: siguen funcionando, pero sus valores varían entre navegadores y distribuciones.

Cómo tratan los navegadores Delete

Delete elimina el carácter que está después del cursor, o el elemento seleccionado en gestores de archivos y listas. En los portátiles Mac es Fn+Delete, porque la tecla etiquetada como “delete” envía Backspace.

En React

<input onKeyDown={(e) => { if (e.key === "Delete") { /* … */ } }} />

Preguntas frecuentes

¿Cuál es el keyCode de Delete?
46. Está obsoleto, no obstante: usa event.key (“Delete”) o event.code (Delete) en código nuevo.
¿Cuál es la diferencia entre event.key y event.code?
event.key es el carácter o la acción que produce la tecla con la distribución actual; event.code es la posición física de la tecla, igual en todas las distribuciones.
¿Debo usar keydown o keypress?
keydown. El evento keypress está obsoleto y no se dispara con teclas que no producen caracteres, como Escape o las flechas.