μλ°μ€ν¬λ¦½νΈμμ μ½λ°± ν¨μλ λ€λ₯Έ ν¨μμ λ§€κ°λ³μλ‘ μ λ¬λμ΄ ν΄λΉ ν¨μμ μ€νμ΄ μλ£λ νμ νΈμΆλλ ν¨μλ₯Ό κ°λ¦¬ν΅λλ€. μ΄λ λΉλκΈ°μ μΈ μμ
μ μ²λ¦¬νκ±°λ νΉμ μ΄λ²€νΈκ° λ°μνμ λ μ²λ¦¬ν λ‘μ§μ μ μν λ μ μ©ν©λλ€.
μλ₯Ό λ€μ΄, setTimeout ν¨μλ μ½λ°± ν¨μλ₯Ό μ¬μ©νμ¬ νΉμ μκ°μ΄ κ²½κ³Όν νμ μ€νλλ μ½λλ₯Ό μ μν μ μμΌλ©° μ½λ μ μ΄κΆλ ν¨κ» μμν ν¨μμ λλ€.
μλ₯Ό λ€μ΄, setTimeout ν¨μλ μ½λ°± ν¨μλ₯Ό μ¬μ©νμ¬ νΉμ μκ°μ΄ κ²½κ³Όν νμ μ€νλλ μ½λλ₯Ό μ μν μ μμΌλ©° μ½λ μ μ΄κΆλ ν¨κ» μμν ν¨μμ λλ€.
function performAsyncTask() { console.log("λΉλκΈ° μμ μμ"); setTimeout(() => { console.log("λΉλκΈ° μμ μλ£"); }, 2000); console.log("λ€λ₯Έ μ½λ"); } performAsyncTask(); //"λΉλκΈ° μμ μμ" //"λ€λ₯Έ μ½λ" //"λΉλκΈ° μμ μλ£"
μμ μ½λμμ setTimeout ν¨μλ‘ λΉλκΈ° μμ
μ μμν νμ console.log("λ€λ₯Έ μ½λ")κ° μ€νλ©λλ€. μ΄λ "λ€λ₯Έ μ½λ" λΆλΆμ΄ λΉλκΈ° μμ
μ΄ μλ£λκΈ°λ₯Ό κΈ°λ€λ¦¬λ λμ μ€νλλ μ½λμ΄λ©° λΉλκΈ° μμ
μ μλ£λ₯Ό κΈ°λ€λ¦¬λ λμ μλ°μ€ν¬λ¦½νΈ μ½λ μ€ν μ μ΄κΆμ΄ λ€λ₯Έ μ½λμκ² λμ΄κ°λλ€. μ΄λ₯Ό ν΅ν΄ λΉλκΈ° μμ
μ μ²λ¦¬νλ©΄μλ μ½λ μ€νμ νλ¦μ μ μ΄ν μ μμ΅λλ€.