231006 개발일지 TIL - JavaScript Switch문에서 Break를 생략하면 어떻게 될까?

The Web On Everything·2023년 10월 6일
0

개발일지

목록 보기
149/269

JavaScript Switch문에서 Break를 생략하면 어떻게 될까?

JavaScript에서 제어 흐름을 관리하는 방법 중 하나는 switch 문을 사용하는 것이다.

let fruit = "사과";

switch (fruit) {
	case "사과":
		console.log('사과입니다.');
		// break;
	case "바나나":
		console.log('바나나입니다.');
		// break;
	case "키위":
		console.log('키위입니다.');
		// break;
	default:
		console.log('아무것도 아닙니다.');
}

위 코드에서는 변수 fruit가 "사과"로 설정되어 있다.그런데 여기서 각각의 case 뒤에 있는 break;가 주석처리 되어 있다. 이 경우, JavaScript는 'fall-through'라는 동작을 보여준다.

사과입니다.
바나나입니다.
키위입니다.
아무것도 아닙니다.

즉, 일치하는 첫 번째 case인 '사과'를 찾은 후, 그 다음의 모든 case들도 순차적으로 실행된다.

결론
이렇게 break문이 없으면 의도하지 않은 동작이 발생할 수 있으므로, 각 case 블록마다 꼭 break;를 포함시켜야 한다. 하지만 특정한 상황에서 의도적으로 fall-through를 사용하기도 한다고 한다. 예를 들어, 여러 case가 같은 동작을 공유해야 하는 경우 등에 유용할 수 있다.

profile
오늘은 무슨 오류를 만날까?! 널 만나러 가는 길~ LOL

0개의 댓글