[JavaScript]๋ด์ฅํจ์ - setTimeout/setInterval/clearTimeout/clearInterval
๐ค๋ด์ฅํจ์๋?
๋ธ๋ผ์ฐ์ ๋ด๋ถ์ ์ ์ธ๋์ด ์๋ ํจ์
์๊ฐ ๊ฒฝ๊ณผ์ ๋ฐ๋ฅธ ๋ช
๋ น ์คํ ํจ์
setTimeout(callback, ms) : ์๊ฐ(ms) ๊ฒฝ๊ณผ ํ ์ฝ๋ฐฑํจ์๋ฅผ ํ๋ฒ๋ง ํธ์ถํ์ฌ ์ฝ๋ฐฑํจ์์ ๋ช
๋ น์ ์คํํ๋ ํจ์ - timeoutId(setTimeout ํจ์๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ํ ์๋ณ์) ๋ฐํ
clearTimeout(timeoutId) : setTimeout ํจ์์ ์๋ณ์(timeoutId)๋ฅผ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌ๋ฐ์setTimeout ํจ์๋ฅผ ์ทจ์ํ๋ ํจ์
setInterval(callback, ms) : ์๊ฐ(ms) ๊ฒฝ๊ณผ๋ง๋ค ์ฝ๋ฐฑํจ์๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ํธ์ถํ์ฌ ์ฝ๋ฐฑํจ์์ ๋ช
๋ น์ ์คํํ๋ ํจ์ - intervalId(setInterval ํจ์๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ํ ์๋ณ์) ๋ฐํ
clearInterval(intervalId) : setInterval ํจ์์ ์๋ณ์(intervalId)๋ฅผ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌ๋ฐ์ setInterval ํจ์๋ฅผ ์ทจ์ํ๋ ํจ์
์ค์ต์์ ๐ฉ๐ป
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScript</title>
</head>
<body>
<script type="text/javascript">
//setInterval ํจ์์ ์ฒซ๋ฒ์งธ ๋งค๊ฐ๋ณ์์ ์ต๋ช
ํจ์๋ฅผ ์ ์ธํ์ฌ ์ ๋ฌ
// => setInterval ํจ์ ๋ด๋ถ์์ ์๋์ผ๋ก ํธ์ถ - Callback ํจ์
//๋ฐฉ๋ฒ1)
var id=setInterval(function() {
//์๊ฐ ๊ฒฝ๊ณผ๋ง๋ค ์คํ๋ ๋ช
๋ น ์์ฑ
alert("setInterval ํจ์์ ์ํด ๋ฐ๋ณต ์คํ๋๋ ๋ช
๋ น");
}, 1000);
//๋ฐฉ๋ฒ2)
var id=setInterval(() => alert("setInterval ํจ์์ ์ํด ๋ฐ๋ณต ์คํ๋๋ ๋ช
๋ น"), 1000);
//5์ด ๋ค์ id์ ์ ์ฅ๋ setInterval ํจ์๋ฅผ ์ทจ์
//setTimeout์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ 1๋ฒ๋ง ์คํ๋จ
setTimeout(function() {
clearInterval(id);
}, 5000);
</script>
</body>
</html>