shiftKey 속성이란?
JavaScript에서 shiftKey 속성은 키보드 이벤트(keydown, keyup 등)가 발생한 순간 사용자가 SHIFT 키를 누르고 있었는지 여부를 알려주는 불리언(Boolean) 값입니다.
- SHIFT 키가 눌려 있는 상태라면
true를 반환합니다. - SHIFT 키가 눌려 있지 않다면
false를 반환합니다.
이 속성은 ctrlKey, altKey, metaKey와 같은 다른 수정자 키(modifier key) 속성들과 함께 사용되며, Shift + 클릭, Shift + 방향키 선택처럼 조합 키 동작을 구현할 때 매우 유용합니다.
예제
다음 코드를 실행하면 입력 필드에서 키를 누를 때마다 SHIFT 키의 눌림 여부가 화면에 표시됩니다.
<!DOCTYPE html>
<html>
<body>
<input type = "text" onkeydown = "funcShiftKey(event)">
<div id = "res">아무 키나 눌러 보세요</div>
<script>
function funcShiftKey(event) {
var val = document.getElementById("res");
if (event.shiftKey) {
val.innerHTML = "SHIFT 키: 눌림";
} else {
val.innerHTML = "SHIFT 키: 눌리지 않음";
}
}
</script>
</body>
</html>위 예제에서는 입력 필드에 onkeydown 이벤트 핸들러를 연결하고, 이벤트 객체의 shiftKey 값을 검사하여 결과를 <div> 영역에 출력합니다. SHIFT 키를 누른 채로 아무 글자나 입력하면 "SHIFT 키: 눌림"이라는 메시지가, SHIFT 키 없이 입력하면 "SHIFT 키: 눌리지 않음"이라는 메시지가 표시됩니다.