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
| // arrow function으로 사용하려면 return과 {}를 생략해야 됨
const makeOrder = function (order) {
return new Promise((resolve, reject) => {
let coffee;
setTimeout(function() {
if(order === undefined){
reject("주문 잘못함")
}else{
coffee = order
resolve(coffee)
}
}, 3000)
})
}
// nonblocking을 blocking으로 처리
const getCoffee = function(order){
try{
const coffee = makeOrder(order)
}
catch(error){
console.log(error)
}
}
getCoffee("Americano")
>>> UnhandledPromiseRejectionWarning: 주문 잘못함
// 현재 nonblocking하게 작동하기 때문에
|