Cómo detectar Enter
document.addEventListener('keydown', (event) => {
if (event.key === "Enter" && !event.isComposing) {
// Enter was pressed
}
});
Usa event.key para reaccionar según el significado de la tecla (depende de la distribución del teclado) y event.code para su posición física, por ejemplo WASD en juegos. keyCode y which están obsoletos: siguen funcionando, pero sus valores varían entre navegadores y distribuciones.
Cómo tratan los navegadores la tecla Enter
Enter envía un formulario cuando el foco está en un campo de texto, y activa botones y enlaces. Comprueba event.isComposing: mientras alguien escribe en chino, japonés o coreano, Enter confirma la composición y no debería disparar tu acción. El Enter del teclado numérico tiene el mismo key, pero code NumpadEnter.
En React
<input onKeyDown={(e) => { if (e.key === "Enter") { /* … */ } }} />Buscador de Keycodes JavaScript
Pulsa cualquier tecla y mira al instante todas las propiedades del evento de teclado, con un fragmento keydown listo para copiar para tus atajos.