• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

Promise 안에 async가 있는 것은 중첩된 비동기 코드로 이해하면 될까요?

21.12.19 00:18 작성 조회수 327

1

Heropy님 좋은 강의 감사합니다.

searchMovies()함수의 구조가 Promise 안에 async가 들어있는 중첩구조처럼 느껴집니다. 한 번만 비동기를 해도 될 것 같은데 비동기 코드 안에서 비동기가 다시 실행되는 것처럼 느껴져서 혼란스럽습니다.

결국 작동원리와 오브젝트의 흐름이 파악되지 않아서 fetch()로 바꿔봤는데요, 이런 접근에 어떤 장단점이 있을까요?

promise = fetch(`http://www.omdbapi.com/?apikey=${apikey}&s=${title}`)
	.then(res => res.json())
	.then(data => data.Search)

답변 1

답변을 작성해보세요.

1

네 Taro Be 님 안녕하세요.😄

해당 내용을 중첩된 비동기로 이해하신 것이 맞습니다.

특별한 장단점이 있다고 생각하진 않네요.

잘 정리하신 것 같아요!👍

만약 axios를 fetch 메소드로 변경해도 searchMovies 함수는 유지하는 게 좋을 듯합니다.

다음과 같이 수정해서 사용하세요~

function searchMovies() {
return fetch('https://ww.omdbapi.com/?i=tt3896198&apikey=7035c60c')
.then(res => res.json())
.then(data => data.Search)
}