async & await
2021. 5. 27. 23:11ㆍTIL/자바스크립트
728x90
'use strict';
// async & await
// clear style of using promise
// 1. async
async function fetchUser() {
// do network reqeust in 10 secs...
return 'bella';
}
const user = fetchUser();
user.then(console.log);
console.log(user);
// 2. await
function delay(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function getApple() {
await delay(2000);
return '🍎';
}
async function getBanana() {
await delay(1000);
return '🍌';
}
async function pickFruits() {
const applePromise = getApple();
const bananaPromise = getBanana();
const apple = await applePromise;
const banana = await bananaPromise;
return `${apple} + ${banana}`;
}
pickFruits().then(console.log);
// 3. useful Promise APIs
function pickAllFruits() {
return Promise.all([getApple(), getBanana()])
.then(fruits => fruits.join(' + '));
}
pickAllFruits().then(console.log);
function pickOnlyOne() {
return Promise.race([getApple(), getBanana()]);
}
//race: 먼저 받아지는 값을 출력
pickOnlyOne().then(console.log);
'TIL > 자바스크립트' 카테고리의 다른 글
실시간 시계 만들기 (0) | 2021.06.17 |
---|---|
로그인 화면 만들기 (0) | 2021.06.17 |
callback to promise (0) | 2021.05.24 |
Promise (0) | 2021.05.24 |
비동기처리 콜백 (0) | 2021.05.20 |