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