Tra mã phím online: xem event.code, key và keyCode khi bấm

Cập nhật: 10/09/2026Chạy trong trình duyệt, không cài phần mềmKhông gửi dữ liệu đi đâu

Bấm một phím bất kỳ, trang hiện ngay mọi thứ trình duyệt biết về phím đó: mã vị trí, ký tự sinh ra, hai mã cũ keyCode và which, và vị trí trái hay phải.

Bên dưới là bảng tra đầy đủ theo sơ đồ bàn phím full-size, có ô lọc nhanh — tiện khi bạn cần tra mã của một phím mà không có phím đó trong tay.

Cách test trong 1 phút

Dùng cho cả người thường lẫn người viết code:

  1. Bấm Bắt đầu test.
  2. Bấm phím bạn muốn tra. Thẻ lớn ở giữa hiện mã vị trí phím.
  3. Xem bảng ngay dưới thẻ để biết ký tự sinh ra, mã cũ và vị trí trái phải.
  4. Muốn tra phím không có trên bàn phím của bạn, gõ tên phím vào ô lọc của bảng tra ở cuối trang.
Bạn thấyNghĩa làViệc cần làm
event.codeVị trí phím vật lýDùng cái này khi muốn biết phím ở đâu trên bàn phím
event.keyKý tự thật sự sinh raDùng cái này khi muốn biết người dùng gõ ra chữ gì
keyCode và whichHai mã đời cũChỉ dùng để tra tài liệu cũ, không nên dùng cho code mới
locationPhím bên trái, bên phải hay thuộc cụm sốPhân biệt hai phím Shift, hai phím Ctrl

Ví dụ kết quả

Ví dụ với một phím quen thuộc:

Thuộc tínhGiá trị khi bấm phím dấu chấm phẩy trên bàn phím Mỹ
event.codeSemicolon
event.keydấu chấm phẩy
keyCode và which186
location0 — phím thường, không phải trái hay phải

Ba thế hệ thuộc tính mã phím

Thế hệ đầu là keyCode và which, có từ thời trình duyệt còn chưa thống nhất chuẩn. Chúng trả về số, và cùng một con số có thể ứng với phím khác nhau tuỳ bố cục bàn phím. Chuẩn web hiện đã đánh dấu chúng là không nên dùng nữa, nhưng vẫn giữ lại để các trang cũ không hỏng.

Thế hệ sau là key, trả về chính ký tự người dùng gõ ra dưới dạng chuỗi. Đây là thứ bạn cần khi quan tâm tới nội dung.

Cuối cùng là code, trả về vị trí phím vật lý và không đổi theo bố cục bàn phím hay ngôn ngữ. Đây là thứ bạn cần khi quan tâm tới vị trí, ví dụ khi gán phím điều khiển trong game.

Giới hạn trình duyệt và trường hợp đặc biệt

Ba điều dễ nhầm khi đọc mã phím:

Trường hợpĐiều xảy raVì sao
Đổi layout bàn phím sang tiếng Đứcevent.code không đổi, event.key đổicode gắn với vị trí vật lý, key gắn với ký tự
Bật bộ gõ tiếng Việtevent.key thành chữ có dấuBộ gõ ghép nhiều phím thành một ký tự
Gõ trên bàn phím ảo điện thoạievent.code thường rỗngPhím ảo không có vị trí vật lý để báo
Dùng keyCode trong code mớiVẫn chạy nhưng đã lỗi thờiChuẩn web đã đánh dấu keyCode là không nên dùng

Công cụ liên quan

Các công cụ dùng chung khái niệm mã phím:

Câu hỏi thường gặp

Nên dùng event.code hay event.key khi viết code?

Dùng code khi bạn quan tâm tới vị trí phím, ví dụ phím điều khiển trong game phải nằm đúng chỗ dù người chơi dùng layout nào. Dùng key khi bạn quan tâm tới ký tự người dùng gõ ra, ví dụ khi xử lý phím tắt theo chữ cái.

keyCode 186 nghĩa là gì?

Đó là mã đời cũ của phím dấu chấm phẩy trên bàn phím bố cục Mỹ. Các mã trong khoảng 186 đến 222 dành cho phím dấu, và chúng khác nhau giữa các bố cục bàn phím — đây chính là lý do chuẩn web khuyên dùng code thay cho keyCode.

Vì sao hai phím Shift lại có cùng event.key?

Vì cả hai đều sinh ra cùng một chức năng nên key đều là Shift. Muốn phân biệt, hãy xem event.code là ShiftLeft hay ShiftRight, hoặc xem location: 1 là bên trái, 2 là bên phải.

Bấm phím mà thẻ không hiện gì?

Có thể bạn đang bấm một tổ hợp bị hệ điều hành giữ lại, hoặc phím đó không sinh sự kiện, ví dụ phím Fn trên laptop. Hãy thử một phím chữ thông thường trước để chắc chắn công cụ đang chạy.

Bảng tra ở cuối trang lấy dữ liệu từ đâu?

Từ chính sơ đồ bàn phím full-size mà trang web dùng để vẽ, gồm 104 phím theo bố cục ANSI. Bảng liệt kê mã vị trí phím và nhãn in trên phím, không bao gồm keyCode vì mã đó phụ thuộc bố cục bàn phím của từng máy.

Trang có ghi lại phím tôi bấm không?

Không. Mọi thứ hiển thị ngay trong trình duyệt và biến mất khi bạn đóng tab. Trang không gửi phím gõ lên máy chủ và không lưu lại ở bất kỳ đâu.

Căn cứ / Nguồn

  • MDN Web Docs — KeyboardEvent.code và KeyboardEvent.key, Mozilla, 2026 — developer.mozilla.org
  • MDN Web Docs — KeyboardEvent, danh sách thuộc tính đầy đủ — developer.mozilla.org
  • Can I use — bảng hỗ trợ API theo trình duyệt, 2026 — caniuse.com

Cập nhật: 10/09/2026