>웹 프론트엔드 >JS 튜토리얼 >JavaScript에서 반환과 반환 대기의 차이점

JavaScript에서 반환과 반환 대기의 차이점

Barbara Streisand
Barbara Streisand원래의
2024-12-19 13:16:10601검색

Difference between return and return await in JavaScript

두 가지 접근 방식이 동일하다고 생각하실 수도 있습니다. 하지만 반품과 반품 대기에는 결정적인 차이가 있습니다.

데이터베이스 쿼리와 같은 약속을 처리할 때 일반적으로 대기를 사용합니다. 예:

async function getUserById(userId) {
  const user = await userRepository.findById(userId);
  return user;
}

그러나 이 경우 Wait를 반드시 사용할 필요는 없습니다. 다음과 같이 작성할 수 있습니다.

function getUserById(userId) {
  return userRepository.findById(userId);
}

두 옵션 모두 정상적으로 작동합니다.

try/catch 블록이 있으면 동작이 달라지는데, 이를 인지하지 못하면 예상치 못한 오류가 발생할 수 있습니다.

function getUserById(userId) {
  try {
    return userRepository.findById(userId);
  } catch (error) {
    console.error(error.message);
  }
}

findById에서 오류가 발생하면 catch되지 않으며 이것이 문제가 될 가능성이 높습니다. 여기서 return wait를 사용해야 합니다.

async function getUserById(userId) {
  try {
    return await userRepository.findById(userId);
  } catch (error) {
    console.error(error.message);
  }
}

이제 안전합니다. 모든 오류는 catch 블록에 들어갑니다.

요약하자면, catch 블록의 오류를 처리하고 처리해야 하는 경우 애플리케이션이 올바르게 작동하는지 확인하기 위해 return wait를 사용해야 합니다.

위 내용은 JavaScript에서 반환과 반환 대기의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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