JavaScript의 return 문의 미묘한 점
return 문이 실행된 후에는
함수가 작업을 종료하고 그 이후의 어떤
코드도 실행되지 않습니다. 예를 참고하세요:
function func(num) {
return num ** 2;
console.log('!'); // 이 코드는 절대 실행되지 않습니다
}
let res = func(3);
함수에 하나의 return만 있어야 한다는 의미는 아닙니다.
하지만 그 중 하나만 실행됩니다. 다음 예에서
매개변수의 값에 따라 첫 번째 또는 두 번째
return가 실행됩니다:
function func(num) {
if (num >= 0) {
return '+++';
} else {
return '---';
}
}
console.log(func( 3)); // '+++'를 출력합니다
console.log(func(-3)); // '---'를 출력합니다
다음 코드를 실행한 결과 콘솔에 무엇이 출력될까요:
function func(num) {
return num;
let res = num ** 2;
return res;
}
console.log( func(3) );
그 이유를 설명하세요.
다음 코드를 실행한 결과 콘솔에 무엇이 출력될까요:
function func(num) {
if (num <= 0) {
return Math.abs(num);
} else {
return num ** 2;
}
}
console.log( func(10) );
console.log( func(-5) );
그 이유를 설명하세요.
다음 코드를 실행한 결과 콘솔에 무엇이 출력될까요:
function func(num) {
if (num <= 0) {
return Math.abs(num);
}
return num ** 2;
}
console.log( func(10) );
console.log( func(-5) );
그 이유를 설명하세요.