반환 키워드

return를 사용하여 함수가 최종으로 생성해야 하는 값을 지정합니다. 표시됩니다. 인터프리터가 return 문에 도달하면 해당 문이 즉시 종료되고 지정된 값이 함수가 호출된 컨텍스트:

const myFunction = function() {
   
return 2 + 2;
}

myFunction
();
> 4

값을 반환하는 함수는 데이터를 반환하는 함수로 효과적으로 취급될 수 있습니다. 다음과 같이 변수를 포함합니다.

const myFunction = function() {
   
return 2 + 2;
}

myFunction
() + myFunction();
> 8

표현식이 없는 return 문은 함수를 종료하고 다음을 반환합니다. undefined:

const myFunction = function() {
   
return;
}

myFunction
();
> undefined

return 키워드는 함수의 끝을 나타내므로 다음과 같은 경우 발생한 return가 실행되지 않습니다.

const myFunction = function() {
   
return true;
   console
.log( "This is a string." );
}

myFunction
();
> true

또한 발생한 return 문 뒤에 오는 코드는 경고 (오류 아님)가 표시됩니다. 있습니다.

const myFunction = function() {
   
return true;
   console
.log( "This is a string." );
}
> unreachable code after return statement

myFunction
();
> true

다시 말하지만, 이 내용은 return 명령문에 함수 실행(return 문 뒤에 오는 코드는 순차적으로)되지 않습니다.

const myFunction = function( myParameter ) {
   
if( myParameter === undefined ) {
   
return "This is the result.";
   
}
   
return "This is the alternate result.";
}

myFunction
();
> "This is the result."

myFunction
( true );
> "This is the alternate result."

'합선' 초기 return를 사용하는 함수를 통해 더 간결하게 함수 끝에 있는 단일 return 문보다 훨씬 더 큰 숫자입니다. 예를 들어 다음 함수는 전달된 값이 5를 포함하는 문자열인지 여부를 결정합니다. 합니다(영문 기준). 전달된 값이 문자열 리터럴이 아니면 문자 수를 세는 데 필요하지 않으며 함수는 false를 반환할 수 있습니다. 즉시 결과:

function myFunction( myString ) {
   
if( typeof myString !== "string" ) {
   
return false;
   
}
   
if( myString.length >= 5 ) {
   
return true;
   
} else {
   
return false;
   
}
}

myFunction
( 100 );
> false

myFunction
( "St" );
> false

myFunction
( "String." );
> true

화살표 함수 표현식 화살표 함수 본문이return 에는 단일 표현식이 포함되며 블록 구문은 없습니다.

const myFunction = () => 2 + 2;

myFunction
();
> 4

블록 구문을 사용하여 화살표 함수 본문을 정의하는 경우 명시적 return 함수 본문에 하나의 표현식만 포함된 경우에도 필요합니다.

const myFunction = () => { 2 + 2 };

myFunction
();
> undefined
const myFunction = () => { return 2 + 2 };

myFunction
();
> 4

이해도 확인

return의 용도는 무엇인가요?

함수의 최종 결과 지정
함수 시작 부분에 코드 반환