less than 1 minute read

  • 프라미스 체이닝

    result 가 .then 핸들러의 체인을 통해 전달된다는 점에서 착안

    promise.then 호출 시 프라미스가 반환되므로 연달아 then 호출

    프라미스 하나에 .then 여러 개 추가하는 것은 체이닝이 아닌 여러 개의 핸들러를 등록한 것

    then 대신 프라미스 반환하는 것으로도 비동기 체이닝 가능

    콜백이 깊어질 수록 해당 중첩 콜백은 외부의 변수에 접근할 수 있으므로 주의

    비동기 동작은 체인 확장이 핵심이므로 항상 promise 반환해야 함

    • thenable 객체

      .then 을 가진 객체

      프라미스와 호환 가능한 ‘자체 객체’

      • then

        resolve, reject 라는 네이티브 함수를 인수로 받고 둘 중 하나 호출될 때 까지 기다림

        Promise 객체 상속받지 않고 커스텀 객체 사용해 프라미스 체이닝 만들 수 있음

    • fetch

    url에 네트워크 요청 보내고 그 값을 프라미스로 반환

    프라미스는 reponse 객체와 함께 이행되며 다양한 매개변수 존재