๊ณ ์ฐจํจ์, ์ฝ๋ฐฑํจ์ ๊ด๋ จ๋ ๊ณผ์ ๋ฅผ ํ์ดํ๋์ ํตํด ์งํํ๋ค.
์ด์ ์ ๋ฐฐ์ ๋ ๋ด์ฉ์ ํ ๋๋ก ์งํํ๊ณ ์ฝ๋ฐฑํจ์๋ฅผ ํ์ฉํด ๊ธฐ์กด์ ์ ์ธ๋์ด์๋ ํจ์๋ฅผ ์ด์ฉํด ์์ ํ๋๊ฒ ๋ง์๋ค.
๋ํ ๋น๋๊ธฐ, ๋๊ธฐ๊ฐ ๋ฌด์์ธ์ง ๊ฐ๋จํ๊ฒ ๋ฐฐ์ธ ์ ์์๋ค.
์ฃผ์ด์ง this ๊ฐ๊ณผ ๋ฐฐ์ด (๋๋ ์ ์ฌ ๋ฐฐ์ด ๊ฐ์ฒด) ๋ก ์ ๊ณต๋๋ arguments ๋ก ํจ์๋ฅผ ํธ์ถํฉ๋๋ค.
ํ๋์ ์์ ์ด ๋๋ ๋ ๊น์ง ์ด์ด์ง๋ ์์ ์ "๋ง๋ ๊ฒ"
์์ ์์ ๊ณผ ์๋ฃ ์์ ์ด ๊ฐ์ ์ํฉ
๋น๋๊ธฐ์ ์ผ๋ก ์๋๋์ด์ผ ํจ์จ์ ์ด๋ค.
- ๋ฐฑ๊ทธ๋ผ์ด๋ ์คํ, ๋ก๋ฉ์ฐฝ ๋ฑ ์์
- ์ธํฐ๋ท์์ ์๋ฒ๋ก ์์ฒญ ๋ณด๊ฐ๊ณ , ์๋ต์ ๊ธฐ๋ค๋ฆฌ๋ ์์
- ํฐ ์ฉ์์ ํ์ผ์ ๋ก๋ฉํ๋ ์์
Javascript๋ ์ฑ๊ธ ์ค๋ ๋ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋ ์ธ์ด๋ก ๋๊ธฐ์ ์ ์๋ํ๋ค.
๊ทธ๋๋ Javascript๊ฐ ๋น๋๊ธฐ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ ์ด์
์๋ํ๋ ํ๊ฒฝ(๋ฐํ์)์์ ๋น๋๊ธฐ์ฒ๋ฆฌ๋ฅผ ๋์์ฃผ๊ธฐ ๋๋ฌธ์ด๋ค.
const timer = setTimeout(functon(){
console.log('10์ด ํ ์คํ');
}, 10000) // 10์ดํ ์คํ
clearTimeout(timer); // setTimeout ์ข
๋ฃ
const timer = setInterval(function(){
console.log('1์ด ๋ง๋ค ์คํ');
}, 1000) // 1์ด ๋ง๋ค ์คํ
clearInterval(timer); //setInterval ์ข
๋ฃ
๊ณผ์ ๋ฅผ ํ๋ฉด์ ์ฝ๋ฐฑํจ์ ํ์ฉํ๋ ์ฐ์ต์ ํ ๊ฑฐ ๊ฐ๋ค.
์ฝ๋ฐฑํจ์๋ ์์๋๋ฉด ์ ์ฉํ๊ธฐ ๋๋ฌธ์ ์ฝ๋ฐฑํจ์๋ฅผ ์ฌ์ฉํ๋ฉฐ ์ฝ๋๋ฅผ ์์ฑํ๋ ์ต๊ด์ ๋ง๋ค์ด์ผ๊ฒ ๋ค.
๋๊ธฐ, ๋น๋๊ธฐ์ ๋ํด ๋ค์ด๋ณธ ์ ์ ์์์ง๋ง ์ด๋ฒ ๊ธฐํ๋ฅผ ํตํด
๋ ์ฉ์ด์ ์ฐจ์ด์ ์ ๋ํด ์ ์ ์์๋ค.