Linke eckige Klammer ([) Keycode in JavaScript

Für Linke eckige Klammer ([) ist event.key der [ (or { with Shift), event.code ist BracketLeft und das veraltete keyCode ist 219. Drück im Key Code Finder eine beliebige Taste, um ihre Werte live zu sehen.

Aktualisiert am

EigenschaftWert
event.key[ (or { with Shift)
event.codeBracketLeft
event.keyCode / which (veraltet)219

So erkennst du die Linke eckige Klammer ([)

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

Verwende event.key, um auf die Bedeutung der Taste zu reagieren (sie folgt dem Tastaturlayout), und event.code für ihre physische Position, zum Beispiel WASD in Spielen. keyCode und which sind veraltet: Sie funktionieren noch, aber ihre Werte unterscheiden sich zwischen Browsern und Layouts.

Wie Browser die Linke eckige Klammer ([) behandeln

Auf vielen europäischen Layouts brauchen Klammern AltGr, daher kann ein Shortcut auf [ dort schwer zu tippen sein.

In React

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

Häufige Fragen

Was ist der keyCode für die Linke eckige Klammer ([)?
219. Er ist allerdings veraltet: Verwende im neuen Code event.key („[“ bzw. „{“ mit Shift) oder event.code (BracketLeft).
Was ist der Unterschied zwischen event.key und event.code?
event.key ist das Zeichen oder die Aktion, die die Taste mit dem aktuellen Layout auslöst; event.code ist die physische Tastenposition und auf jedem Layout gleich.
Sollte ich keydown oder keypress verwenden?
keydown. Das keypress-Event ist veraltet und wird bei Tasten, die keine Zeichen erzeugen, nicht ausgelöst, etwa Escape oder die Pfeiltasten.