callback Hell, Promises, AJAX CALL - fetch API, XMLHttpRequest

Juyeon Lee·2022년 3월 8일
0

callback hell이란?

is it when we have a lot of nested callbacks in order to execute asynchoronous tasks in sequence.

callback hell 예시

setTimeout(() => {
  console.log('1 second passed');
  setTimeout(() => {
    console.log('2 second passed');
    setTimeout(() => {
      console.log('3 second passed');
      setTimeout(() => {
        console.log('4 second passed');
      }, 1000);
    }, 1000);
  }, 1000);
}, 1000);

이렇게 callback hell 이 있으면 코드를
이해하기 힘들 수 있다.
이런 문제점을 해결하기 위해 promises라는 개념이 나온다고 한다.
promise에 대한 개념은 아래 슬라이드에 잘 정리되어 있다.

promise는 이런 사이클을 가지고 있다고 한다.

참고로 settle은 딱 한번만되고 한번 state가 결정나면
바뀌지 못한다고 한다.

consume promise는 솔직히 아직 내가 이해를 잘 못한거 같다.
내가 이해한바로는 이미 fetch api로 만들어진 promise를
이용하는게 consume promise인거 같은데
이건 다음 강의에서 자세히 설명하는 것 같으니
일단 설명을 들어보고 이해해보자.
아 참고로 fetch api는 이런식으로 간단하게 표현해준다.

const request = fetch('https://restcountries.com/v2/name/portugal');
console.log(request);

똑같이 ajax call해주는 예전 방식으로 XMLHttpRequest라는 것도
배웠는데 이건 fetch api보다 조금 복잡한 방식으로 이런식으로
써줬었다.

const request = new XMLHttpRequest();
request.open('GET', `https://restcountries.com/v2/name/${country}`);
request.send();

0개의 댓글