키보드 이벤트

아무 키나 눌러 보세요. 자바스크립트가 받는 값이 그대로 나옵니다.

키보드 이벤트

아무 키나 누르세요

입력창을 고를 필요 없이 바로 인식합니다

키를 누르면 여기에 값이 나옵니다.
Tab은 페이지 이동을 막지 않으려고 가로채지 않습니다.

code 값 목록

code는 표준에 고정된 값이라 자판 배열·운영체제와 무관하게 같습니다. 반면 숫자 keyCode는 환경에 따라 달라 표로 싣지 않았습니다. 직접 눌러서 확인하세요.

글자·숫자

자판 배열과 무관하게 자리로 정해집니다. 한글 자판에서 ㅁ을 눌러도 KeyA입니다

KeyAKeySKeyDKeyWDigit1Digit0MinusEqualBracketLeftSemicolonQuoteCommaPeriodSlashBackquoteBackslash

기능·이동

가장 많이 검사하는 키들입니다

EscapeTabCapsLockSpaceEnterBackspaceDeleteInsertHomeEndPageUpPageDownArrowUpArrowDownArrowLeftArrowRight

조합키 (좌우 구분)

왼쪽·오른쪽이 다른 code를 냅니다. Meta는 윈도우 키·맥 커맨드 키입니다

ShiftLeftShiftRightControlLeftControlRightAltLeftAltRightMetaLeftMetaRight

숫자패드

Digit1과 Numpad1은 다른 키입니다. NumLock이 꺼져 있으면 key가 방향키로 바뀝니다

Numpad0Numpad1NumpadAddNumpadSubtractNumpadMultiplyNumpadDivideNumpadDecimalNumpadEnterNumLock

펑션키

F11·F12 등 일부는 브라우저가 먼저 가져가 이벤트가 오지 않을 수 있습니다

F1F2F3F4F5F6F7F8F9F10F11F12

단축키를 만들 때 걸리는 것들

브라우저가 먼저 가져가는 키가 있습니다. F11·F12·Ctrl+W·Ctrl+T 같은 조합은 웹페이지에 이벤트가 오지 않습니다. 눌러도 아무 값이 안 나오면 대개 이 경우이고, 웹에서 덮어쓸 방법은 없습니다.

맥과 윈도우가 다릅니다. 복사는 맥에서 ⌘+C(metaKey), 윈도우에서 Ctrl+C(ctrlKey)입니다. 둘 다 지원하려면 e.ctrlKey || e.metaKey로 검사하세요.

한글 입력 중에는 키를 알 수 없습니다. 입력기가 조합하는 동안 keyCode가 229로 고정됩니다. 입력창 안에서 동작하는 단축키를 만들 때는 이 상태를 걸러야 오작동하지 않습니다.

길게 누르면 이벤트가 반복됩니다. repeat가 true인 이벤트를 걸러 내지 않으면 한 번 눌렀는데 동작이 수십 번 실행됩니다.

자주 묻는 질문

key와 code는 무엇이 다른가요?
code는 키의 자리(물리적 위치)이고 key는 실제로 찍히는 글자입니다. 한글 자판에서 ㅁ을 눌러도 code는 KeyA이고, Shift를 함께 누르면 key는 A가 되지만 code는 그대로 KeyA입니다. 게임의 WASD 이동처럼 자리가 중요하면 code를, 입력 내용이 중요하면 key를 쓰세요.
keyCode는 왜 쓰지 말라고 하나요?
표준에서 폐기된 값이기 때문입니다. 자판 배열과 브라우저에 따라 값이 달라 같은 키가 다른 숫자를 내는 경우가 있습니다. 지금도 동작하지만 새로 만드는 코드에서는 key나 code를 쓰는 것이 맞습니다. 이 도구가 keyCode를 함께 보여 주는 이유는 오래된 코드를 고칠 때 그 값이 필요해서입니다.
한글을 입력하면 keyCode가 229로 나옵니다.
정상입니다. 한글·일본어·중국어처럼 글자를 조합해 만드는 입력기(IME)가 처리 중이라는 신호입니다. 이 상태에서는 어떤 키를 눌렀는지 keydown으로 알 수 없습니다. 조합이 끝난 글자가 필요하면 keydown 대신 input 이벤트나 compositionend를 쓰세요.
어떤 키는 눌러도 반응이 없습니다.
F11(전체화면)·F12(개발자 도구)·Ctrl+W처럼 브라우저나 운영체제가 먼저 가져가는 키가 있습니다. 웹페이지에는 이벤트가 오지 않으므로 웹에서 그런 단축키를 덮어쓰는 것은 불가능합니다. 단축키를 만들 때는 이런 조합을 피해야 합니다.
왼쪽 Shift와 오른쪽 Shift를 구분할 수 있나요?
구분할 수 있습니다. code가 ShiftLeft와 ShiftRight로 다르게 나옵니다. Ctrl·Alt·Meta도 마찬가지입니다. 다만 key는 둘 다 Shift로 같으므로 좌우를 구분하려면 code나 location 값을 봐야 합니다.

이 도구는 브라우저 안에서만 계산하며 입력값을 서버로 보내지 않습니다. 분류: 개발 · 마지막 수정 2026-09-08

함께 쓰면 좋은 도구

온라인 도구 전체 보기