javascript 에서 callback hell 해결
Promise 함수
module.export → 명시적으로 간편하게 import & export 할 수 있도록 제공
//includes.js 내용
export const fruits = ['apple','banana','potat'];
export const test = "asdf"
export default test;
JavaScript
Async & Await
예제코드
function resolvePromise(){
return new Promise((resolve, reject)=>{
setTimeout(()=>{
resolve("done!!");
},2000);
})
}
async function getPromise1(){
let result = null;
result = await resolvePromise();
console.log(result);
result = await resolvePromise();
console.log(result);
}
getPromise1();
//결과
done!!
done!!
JavaScript
await 를 사용하지않으면 resolvePromise가 진행 중일 때 result에 할당 ( 기다리지않음)
async function getPromise1(){
let result = null;
result = resolvePromise();
console.log(result);
result = resolvePromise();
console.log(result);
}
getPromise1();
//결과
Promise { <pending> }
Promise { <pending> }
JavaScript
async 로 선언되어 있지 않은 함수에 대해 await 사용하면 에러 발생
function getPromise1(){
let result = null;
result = await resolvePromise();
console.log(result);
result = await resolvePromise();
console.log(result);
}
getPromise1();
//결과
SyntaxError: /Users/kyome/dev/es6/src/index.js:
Can not use keyword 'await' outside an async function (11:13)
JavaScript
'Web 개발 > JS ' 카테고리의 다른 글
[jQuery] 엔터로 로그인하기 (0) | 2019.06.26 |
---|---|
ES6 : Spread, Rest Operator (0) | 2019.06.08 |
ES6 : 비구조화 (0) | 2019.06.08 |
ES6 : Arrow Function, Default Params (0) | 2019.06.08 |
ES6 : import & export, Classes (0) | 2019.06.08 |