promise와 callback 차이

김루루룽·2022년 8월 3일
0

blog✏️

목록 보기
24/61
post-thumbnail

promise

프로미스는 자바스크립트 비동기 처리에 사용되는 객체이다.
자바스크립트에서 비동기 처리란 ?

특정 코드의 실행이 완료될 때까지 기다리지 않고 다음 코드를 먼저 수행하는 자바스크립트의 특성

  • 언제 사용하는가 ?
    시간이 걸리는 작업을 할 때. (외부 api를 요청할 때)

프로미스 쓰고 또 콜백함수 사용...


then, then, then
체인처럼 내려가서
프로미스 체이닝이라고 한다.


주의점

CallBack

비동기 처리 방식 중 하나이다.

문제점 : Callback hell 비동기 처리 로직을 위해 콜백 함수를 연속해서 사용할 때 발생하는 문제이다. 콜백안에 콜백을 계속 무는 형식으로 이러한 코드 구조는 가독성이 떨어지고 로직을 변경하기 어렵다.

const printString = (string, callback) => {
    setTimeout(() => {
        console.log(string)
        callback()
    },
    Math.floor(Math.random() * 100) + 1
  )
}

const printAll = () => {
    printString("A", () => {
           printString("B", () => {
                  printString("C", () => {})
           })
    })
}
printAll()
// A, B, C 순서로 출력

출처 : https://velog.io/@miniyoung37

profile
1day 1push..plz

0개의 댓글