JavaScript에서 return과 break의 차이

JavaScript에서 returnbreak의 차이

JavaScript로 코드를 짜면서 for문과 switch문을 작성할 일이 있었다.
returnbreak가 비슷한 역할을 하면서도 미묘한 차이가 있다는 사실은 알지만,
명확하게 무엇이 다른 지는 생각나지 않았다. 따라서, 간략하게 정리하고자 한다.

1. return

  • return은 함수 실행을 종료하고, 함수를 빠져 나온다.



2. break

  • break는 현재 루프 즉, switchfor, while문 등을 종료하고 루프에서 빠져나온다.



3. returnbreak의 차이

  • 만약에 함수 안에 작성된 루프 안에서 break가 쓰였다면, break를 감싸고 있는 루프를 빠져나가고 함수 밖으로는 나가지 않는다.
    return은 함수 실행을 종료하고 함수를 호출한 곳으로 실행 흐름을 옮긴다.



예시

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 다음 함수는 i가 3일 때, break문을 만나서, while loop를 종료합니다.
// 그 후에 while문을 빠져나와서 실행 흐름이 return i * x;로 가서
// 3 * x 값을 반환합니다.
function text(x) {
let i = 0;

while (i < 6) {
if (i == 3) {
break;
}
i += 1;
}
return i * x;
}




참고 링크

mdn- return에 대한 내용
mdn- break에 대한 내용