>웹 프론트엔드 >JS 튜토리얼 >ES6 화살표 함수에서 언제 명시적 반환 문을 사용해야 합니까?

ES6 화살표 함수에서 언제 명시적 반환 문을 사용해야 합니까?

DDD
DDD원래의
2024-12-25 08:15:24947검색

When Should I Use Explicit Return Statements in ES6 Arrow Functions?

ES6 화살표 함수에서 Return 문을 사용해야 하는 경우

ES6 화살표 함수는 함수 작성을 위한 간결한 구문을 제공합니다. 그러나 기존 함수와 달리 화살표 함수는 표현식의 결과를 암시적으로 반환합니다.

Return을 사용해야 하는 경우

암시적 반환이 편리하지만 특정 경우가 있습니다. 명시적인 반환 문이 필요합니다:

1. 여러 줄 함수

화살표 함수가 여러 줄에 걸쳐 있는 경우 명시적인 return 문을 사용해야 합니다. 이렇게 하면 개발자가 return 문 추가를 잊어버린 경우 오류가 발생하지 않습니다.

예를 들어 다음 화살표 함수는 여러 줄로 확장되면 정의되지 않은 값을 반환합니다.

(name) => {
  // Do something
};

이 문제를 방지하려면, 명시적인 반환 문을 사용해야 합니다:

(name) => {
  // Do something
  return 'Hi ' + name;
};

2. 블록

화살표 함수에 블록(중괄호로 구분)이 포함된 경우 블록 내에 명시적인 반환 문이 필요합니다.

예를 들어 다음 함수는 정의되지 않은 이유를 반환합니다. 명시적인 return 문이 없다는 점:

(name) => {
  {
    return 'Hi ' + name;
  }
};

이 문제를 해결하려면 명시적인 return 문을 사용하면 됩니다. 추가됨:

(name) => {
  return {
    id: name
  };
};

예외

블록 내에서 암시적 반환이 유효한 예외가 하나 있습니다. 블록이 괄호로 묶인 단일 표현식으로 구성된 경우입니다.

예를 들어 다음 함수는 객체:

(name) => ({
  id: name
});

다음은 몇 가지 예시입니다:

  • 블록 없음: (이름 ) => 이름; 이름을 반환합니다.
  • 블록 및 명시적 반환 사용: (name) => { '안녕하세요' 이름을 반환합니다. }는 'Hi' 이름을 반환합니다.
  • 블록 및 암시적 반환 사용: (name) => ({ id: name })은 { id: name }을 반환합니다.
  • 오류 있음: (name) => { id: name }은 명시적인 반환 문이 없기 때문에 정의되지 않은 값을 반환합니다.

위 내용은 ES6 화살표 함수에서 언제 명시적 반환 문을 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.