티스토리 뷰
Promise.all()
Promise.all() 은 여러 개의 프로미스를 동시에 실행하고, 결과값을 배열로 반환합니다. 이 메소드는 모든 프로미스가 완료될 때까지 기다립니다. 그리고 모든 프로미스가 완료되면, 각각의 프로미스가 반환한 결과값들이 배열로 반환됩니다.
예를 들어, 아래와 같이 Promise.all() 을 사용하여 두 개의 API 요청을 동시에 수행하고 결과값을 받아올 수 있습니다.
async function fetchUserData() {
const [user, posts] = await Promise.all([
fetchUser(),
fetchPosts()
]);
console.log(user, posts);
}
function fetchUser() {
return axios.get('<https://jsonplaceholder.typicode.com/users/1>');
}
function fetchPosts() {
return axios.get('<https://jsonplaceholder.typicode.com/posts?userId=1>');
}
위 코드에서는 fetchUser() 와 fetchPosts() 를 동시에 실행하고, 두 요청이 모두 완료되면 반환값을 배열로 받아옵니다. 이 때, await 키워드를 사용하여 Promise.all() 의 실행 결과를 받아옵니다.
에러처리
Promise.all() 사용시 하나라도 에러가 발생하게 된다면, 모든 Promise 들이 reject 되어 멈추게 된다.
그러기 때문에 만약에 에러가 나더라도 동작을 시도하고자 한다면, 주의해서 사용해어야 한다.
하지만, 이러한 부분을 신경써서 사용하면 성능 개선에는 아주 좋은 방안이 될 수 있다.
'개발.. > Javascript' 카테고리의 다른 글
자바스크립트 fetch 사용방법 (0) | 2023.09.15 |
---|---|
자바스크립트를 이용해 base64 를 엑셀로 다운로드 기능 구현 (0) | 2023.09.15 |
async, await (0) | 2022.05.25 |
로컬스토리지, 세션스토리지 (0) | 2022.05.16 |
console.log 스타일 적용하기 (0) | 2022.03.23 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 오블완
- vue composition api
- 티스토리챌린지
- nextjs14
- openAI
- dockerfile
- docker
- NUXT
- nodejs
- 깃허브
- webpack
- 타입스크립트
- seo
- Embedding
- Storybook
- Git
- NextJS
- React
- nextjs13
- cors
- svelte
- vscode
- 네이버 서치 어드바이저
- Vite
- Github Actions
- 스벨트
- vue router
- AWS
- 서버 to 서버
- nuxt2
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함