728x90
반응형
이번에 프로미스(Promise)객체를 생성하는 여러가지 방법을 조금 정리하려고 한다.
요즘 제일 많이 사용하는게 async키워드나 fetch 등을 사용하는 방법인데.. 일단 다 정리해봄..
프로미스(Promise) 객체를 생성하는 방법들
1. new 생성자를 이용한 생성방법
let myFirstPromise = new Promise((resolve, reject) => {
// 비동기 작업 수행
setTimeout(() => {
resolve("프로미스 객체 생성 완료");
}, 1000);
});
}
2. 팩토리 함수를 이용한 생성방법 (프로미스 팩토리 함수)
function createPromise() {
return new Promise((resolve, reject) => {
// 비동기 작업 수행
setTimeout(() => {
resolve("프로미스 객체 생성 완료");
}, 1000);
});
}
const promise = createPromise();
3. 'async' 키워드를 이용한 생성방법(자동 프로미스 반환)
async function asyncFunction() {
// 비동기 작업 수행
return "프로미스 객체 생성 완료";
}
const promise = asyncFunction();
4. 'fetch' API를 이용한 생성방법
const promise = fetch("https://api.example.com/data");
// result: Promise {<pending>}
5. 'axios' 라이브러리를 이용한 생성방법
const promise = axios("https://api.example.com/data");
// result: Promise {<pending>}
정리
개발환경에 따라 다르겠지만, 요즘은 프로미스 객체 기반으로 만들어진
나는 fetch나 axios라이브러리를 이용해서 비동기 통신을 많이 하기 때문에, 그쪽으로 많이 사용하고 있다..
특히 최근에는 axios를 많이 사용하는데, 1건이나 2건 정도의 통신을 개별적으로 하지만
많은 양의 통신을 하는 경우에는 axios 라이브러리를 통해서 프로미스 객체를 만든 다음,
배열에 담아 Promise.all이나 Promise.allSettled를 사용하여 병렬처리를 하는 편이다.
위에서 정리한 거 외에도 다른 방법이 몇가지 있긴한데... 사용하는데 있어 주의가 필요하거나 등의
이유로 정리를 따로 하진 않았다.. 간단히만 정리하면 아래와 같다. 찾아볼 사람들은 찾아보자..
1. XMLHttpRequest 사용
2. Promise.resolve() 사용
3. Promise.reject() 사용
728x90
반응형