Kode tombol Shift di JavaScript

Untuk Shift, event.key adalah Shift, event.code adalah ShiftLeft / ShiftRight, dan keyCode yang sudah usang adalah 16. Tekan tombol apa saja di Key Code Finder untuk melihat nilainya secara langsung.

Diperbarui

PropertiNilai
event.keyShift
event.codeShiftLeft / ShiftRight
event.keyCode / which (sudah usang)16

Cara mendeteksi Shift

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

Gunakan event.key untuk bereaksi terhadap arti tombol (mengikuti tata letak keyboard) dan event.code untuk posisi fisiknya, misalnya WASD di game. keyCode dan which sudah usang: keduanya masih berfungsi, tetapi nilainya berbeda antar browser dan tata letak.

Cara browser menangani Shift

Gunakan event.shiftKey untuk memeriksa apakah Shift sedang ditahan saat menekan tombol lain atau mengklik. Jangan melacak penekanan Shift sendiri. Shift mengubah event.key (“a” menjadi “A”) tetapi tidak event.code.

Di React

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

Pertanyaan yang sering diajukan

Apa keyCode untuk Shift?
16. Namun, properti ini sudah usang. Gunakan event.key (“Shift”) atau event.code (ShiftLeft) di kode baru.
Apa perbedaan event.key dan event.code?
event.key adalah karakter atau aksi yang dihasilkan tombol dengan tata letak saat ini. event.code adalah posisi fisik tombol, dan sama di setiap tata letak.
Sebaiknya pakai keydown atau keypress?
keydown. Event keypress sudah usang dan tidak terpicu untuk tombol yang tidak menghasilkan karakter, seperti Escape atau tombol panah.