[react] react를 위한 js ④ - Promise, Async - Await 본문

Web/React

[react] react를 위한 js ④ - Promise, Async - Await

미니모아 2020. 4. 12. 13:18
반응형
  1. Promise
    언젠가 해결할 것이라는 약속

      /* 
       new Promise ((resolve, reject) => {}) 
       Resolve -> 해결, 성공 - > then 
       Reject - 거절, 실패 -> catch  
    
      */
    
           function sayHello2(name){
           return new Promise((resolve,reject)=>{//이건 안 바꾸는게 좋음
                   setTimeout(()=>{
                       console.log(name+"님 안녕하세요")
                       resolve("서울")
                   },3000)
                   })
               }
            sayHello2("Frank")
            .then((seoul)=>console.log(seoul+" 로 안녕히가세요"))
            //resolve의 output을 받아서 input으로 쓸 수 있다. 
    
              /*
                 실행결과 
                  Frank님 안녕하세요
                  서울로 안녕히가세요.   */
    • then을 더 직관적으로 쓰고 싶어서 나온게  async와 await

      
          /*  
          async func\_name(p){
          const result = await get_result() // 결과가 나올 때까지 기다려주겠다는 의미
          } */
      
          async function sayHelloBye(name){  
          loc = await sayHello2(name) //약속을 기다려야 할 때,resolve의 output을 받을 수 있음  
          console.log(loc+ "로 안녕히 가세요")  
          }
      
          sayHelloBye("james")
      
          /*
            실행결과 
          james 안녕하세요 
          서울로 안녕히가세요 */  
반응형
Comments