07/11-2

Posted by:

|

On:

|

비동기함수-Promise객체 사용

function fetchUserPromise(id){
return new Promise((resolve)=>{
console.log("0.1초가 걸립니다")
setTimeout(()=>{
const user={id:id, name:"User"+id}
resolve(user)}
,100)
})
}

값을 전달받아 실행하는 방법은 2가지가 있다

  1. then을 쓰는 경우 : 값을 가져 올 때 return을 써야 한다
    test('userPromise',()=>{
    return asyncfn.fetchUserPromise("2").then(
    (user)=>{expect(user).toEqual({id:"2",name:"User2"})}
    )}
    )
  2. async/await를 쓰는 경우 : 위의 then보다 짧다
    test('userPromise async/await',async()=>{
    const user=await asyncfn.fetchUserPromise("3");
    expect(user).toEqual({id:"3",name:"User3"})
    })