Promise
new Promise
Promise
λ classμ΄κΈ°μnew
ν€μλλ₯Ό ν΅ν΄Promise
κ°μ²΄λ₯Ό μμ±Promise
λ λΉλκΈ° μ²λ¦¬λ₯Ό μνν μ½λ°±ν¨μλ₯Ό μΈμλ‘ λ°λλ°, μ΄ μ½λ°±ν¨μλresolve
,reject
ν¨μλ₯Ό μΈμλ‘ μ λ¬λ°μPromise
κ°μ²΄κ° μμ±λλ©΄ μ½λ°±ν¨μλ μλμΌλ‘ μ€νλ¨μ½λκ° μ μ²λ¦¬λμλ€λ©΄
resolve
ν¨μλ₯Ό νΈμΆνκ³ , μλ¬ λ°μ μreject
ν¨μλ₯Ό νΈμΆ
Promise κ°μ²΄μ λ΄λΆ νλ‘νΌν°
new Promise
κ° λ°ννλ Promise κ°μ²΄λstate
,result
λ΄λΆ νλ‘νΌν°λ₯Ό κ°μ§λ€λ§, μ§μ μ κ·Όν μ μκ³
.then
,.catch
,.finally
λ©μλ μ¬μ©ν΄ μ κ·Ό κ°λ₯State
κΈ°λ³Έ μνλ
pending
. λΉλκΈ° μ²λ¦¬λ₯Ό μνν μ½λ°±ν¨μκ° μ μλνλ€λ©΄ βfulfilled
λ‘ λ³κ²½, μλ¬ λ°μ μrejected
Result
κΈ°λ³Έ μνλ
undefined
λΉλκΈ° μ²λ¦¬λ₯Ό μνν μ½λ°±ν¨μκ° μ μλνμ¬resolve(value)
νΈμΆλλ©΄ β valueλ‘, μλ¬ λ°μν΄reject(error)
νΈμΆλλ©΄ βerror
λ‘ λ³κ²½
then, catch, finally
then
μ½λ°±ν¨μμ μμ±νλ μ½λλ€μ΄ μ μ²λ¦¬λμλ€λ©΄
resolve
ν¨μ νΈμΆ β.then
λ©μλλ‘ μ κ·Ό κ°λ₯.then
μμμ 리ν΄ν κ°μ΄Promise
λΌλ©΄Promise
λ΄λΆ νλ‘νΌν°result
λ₯Ό λ€μ.then
μ μ½λ°±ν¨μμ μΈμλ‘ λ°μμ΄Promise
κ° μλλΌλ©΄ 리ν΄ν κ°μ.then
μ μ½λ°±ν¨μ μΈμλ‘ λ°μμ¬ μ μμ
Catch
μ½λ°±ν¨μμ μμ±ν μ½λμ μλ¬ λ°μ μ
reject
ν¨μλ₯Ό νΈμΆνκ³.catch
λ©μλλ‘ μ κ·Ό κ°λ₯
Finally
μ½λ°±ν¨μμ μμ±ν μ½λλ€μ΄ μ μ μ²λ¦¬ μ¬λΆμ κ΄κ³ μμ΄
.finally
λ©μλλ‘ μ κ·Ό κ°λ₯
Promise Chaining
λΉλκΈ° μμ μ μμ°¨μ μΌλ‘ μ§νν΄μΌ νλ κ²½μ°
Promise all()
μ¬λ¬ κ°μ λΉλκΈ° μμ μ λμμ μ²λ¦¬νκ³ μΆμ λ μ¬μ©
μΈμλ‘λ λ°°μ΄μ λ°μΌλ©°, ν΄λΉ λ°°μ΄μ μλ λͺ¨λ
Promise
μμ μ½λ°±ν¨μ λ΄ μμ±νλ μ½λλ€μ΄ μ μμ μΌλ‘ μ²λ¦¬λμλ€λ©΄ κ²°κ³Όλ₯Ό λ°°μ΄μ μ μ₯ν΄ μλ‘μ΄Promise
λ₯Ό λ°νλλΆμ΄, μΈμλ‘ λ°μ λ°°μ΄μ
Promise
μ€ νλλΌλ μλ¬ λ°μ μ, λλ¨Έμ§Promise
stateμ μκ΄μμ΄ μ¦μ μ’ λ£
Last updated