728x90
return의 용도
MDN의 설명에 따르면 'return 명령문은 함수 실행을 종료하고 주어진 값을 함수 호출 지점으로 반환합니다.'라고 되어있다.
- 함수 중단
- 주어진 값을 함수 호출 지점으로 반환
함수에서 return 명령문에 도달하면 함수의 실행은 그 지점에서 중단되고,
값을 제공한 경우는 함수를 호출한 곳에 그 값을 반환하는데, 이때 값을 명시하지 않으면 undefined를 반환한다.
아래와 같은 명령문은 모두 함수 실행을 중단한다.
return;
return true;
return false;
return x;
return x + y / 3;
return; 만 있는 경우
if 문의 조건이 충족하는 경우 해당 함수를 실행을 중단하고 함수 자체에서 빠져나가라는 의미.
Stack.prototype.pop = function () {
if(this.count <= 0){
return; //위의 조건을 만족하면 해당 함수를 중단시킴
}
var popOne = this.storage[this.count-1];
delete this.storage[this.count-1];
this.count--;
return popOne;
};
return과 break의 차이점
return은 함수 자체를 중단시키는데 비해 break 명령문이 실행되면 블록 문장에서 빠져나와 다음 작업을 시작한다.
즉 return과 break의 차이는 어디까지 빠져나가느냐가 된다.
return : 함수 탈출. 해당 함수(메서드) 자체에서 빠져나감.
break : 루프 탈출. for, switch, while문 등 함수 내의 반복문에서 빠져나감.
코드로 살펴보면 아래와 같이 결괏값의 차이가 있기 때문에 구분해서 사용하면 된다.
function testBreak1(num) {
let i = 0;
while (i < 6) {
if (i === 3) {
break; //break 사용
}
i++;
}
return i * num;
}
function testBreak2(num) {
let i = 0;
while (i < 6) {
if (i === 3) {
return; //return 사용
}
i++;
}
return i * num;
}
testBreak1(2); //6
testBreak2(2); //undefined
728x90
'프로그래밍 > Javascript' 카테고리의 다른 글
[Javascript, 자바스크립트]만 19세 미만 체크하기, 나이 체크 함수 (1) | 2024.04.19 |
---|---|
Ajax Json Array(json배열) 컨트롤러로 전달하기 (2) | 2020.07.22 |
[자바스크립트] input value 에 JSON으로 데이터 전달하기 (0) | 2020.07.20 |
[jQuery(제이쿼리)] .not() 을 사용하여 특정 요소(선택자)를 제외하고 선택하기 (0) | 2020.07.20 |
[jQuery/javascript] JSTL을 사용하여 select box 값 고정하기 (0) | 2020.07.20 |