
추상화하여 함수 외부에서 내부로 로직을 전달할 필요성 생김매개변수로써 함수 (변경되는 로직)를 이용callback 함수 라고 한다.고차 함수라고 한다.📌 Hook 이전, Class 기반의 React에서 고차함수를 통해 state 가 있는 컴포넌트를 재사용 하곤 했다.
pop 된 이 후에 콜 스택에 push 되므로)XMLHttpRequest 생성자 함수를 이용해, 객체를 생성하고 .open,.send,.onload 메서드를 이용해 비동기 작업을 수행한다. (Web API 호출).onload 메서드는 미리 만들어 놓은 콜백함수를 인자로 갖는다.XMLHttpRequest 객체를 참조하므로, 객체의 상태에 따라 결과를 콘솔에 출력한다.state)와 결과(result)를 관리하는 객체Promise 생성자 함수로 생성이 되고, 콜백 함수를 인자로 받는다.resolve 와 reject 라는 함수를 인자로 받는다.const promise = new Promise((resolve, reject) => {
/*여기서 비동기 함수 실행*/
if (성공시) resolve(결과)
else reject(실패 이유)
})
resolve 와 reject 라는 함수가 대신한다.resolve 와 reject 함수는 promise 객체의 프로퍼티를 변경시킨다. (state, result)프로미스의 후속 처리 메서드를 이용하는 것 이다.const promise = new Promise((resolve, reject) => {
/*여기서 비동기 함수 실행*/
if (성공시) resolve(결과)
else reject(실패 이유)
})
promise.then((v) => console.log(v), (e) => console.error(e))
promise 객체의 메서드를 통해 promise 객체의 프로퍼티를 변경하고, 전역으로 읽어옴으로 비동기 결과를 콜백함수 바깥으로 가져올 수 있다는 점이다.프로미스의 후속 처리 메서드의 콜백함수는 마이크로태스크 큐 라는 태스크 큐 보다 우선순위가 높은 큐에 enqueue된다.