События клавиатуры
Есть три основных события клавиатуры: keydown, keypress и keyup. 
При нажатии клавиши сначала происходит keydown, после чего keypress и только потом keyup, когда клавишу отжали.
События keydown и keyup срабатывают при нажатии любой клавиши, включая служебные. А вот keypress срабатывает, только если нажата символьная клавиша, т. е. нажатие приводит к появлению символа. Управляющие клавиши, такие как Ctrl, Shift, Alt и другие, не генерируют событие keypress.
KeyboardEvent.key и KeyboardEvent.code
Свойство KeyboardEvent.key доступно для чтения и возвращает значение клавиши, нажатой пользователем, принимая во внимание состояние клавиш модификаторов, таких как shiftKey, а так же текущий язык и модель клавиатуры.
Свойство KeyboardEvent.code представляет собой физическую клавишу на клавиатуре (в отличие от символа, сгенерированного нажатием клавиши). Другими словами, это свойство возвращает значение, которое не изменяется с помощью раскладки клавиатуры или состояния клавиш-модификаторов.
Поставьте фокус в окно примера, кликнув в него мышкой, отслеживание событий клавиатуры стоит на элементе window. Вводите символы на клавиатуре и результат будет отображаться в списке.
Last updated