Код клавиши «точка с запятой» (;) в JavaScript

Для точки с запятой (;): event.key — это ; (or : with Shift), event.code — Semicolon, а устаревший keyCode — 186. Нажмите любую клавишу в Поиске кодов клавиш, чтобы увидеть её значения в реальном времени.

Обновлено

СвойствоЗначение
event.key; (or : with Shift)
event.codeSemicolon
event.keyCode / which (устаревшее)186

Как определить точку с запятой (;)

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

Используйте event.key, чтобы реагировать на то, что означает клавиша (значение зависит от раскладки), и event.code для её физического положения, например WASD в играх. keyCode и which устарели: они всё ещё работают, но их значения различаются в разных браузерах и раскладках.

Как браузеры обрабатывают точку с запятой (;)

Знаки пунктуации на международных клавиатурах расположены по-разному: на немецкой клавиатуре эта клавиша вводит Ö. Используйте event.key для введённого символа, а event.code только для физических позиций, например для игровых управлений.

В React

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

Часто задаваемые вопросы

Какой keyCode у точки с запятой (;)?
186. Однако он устарел: в новом коде используйте event.key («; (или : с Shift)») или event.code (Semicolon).
В чём разница между event.key и event.code?
event.key — это символ или действие, которое клавиша выдаёт при текущей раскладке; event.code — физическое положение клавиши, одинаковое на любой раскладке.
Что использовать: keydown или keypress?
keydown. Событие keypress устарело и не срабатывает для клавиш, которые не выводят символы, например Escape или стрелки.