ความแตกต่างของ setTimeout() และ setInterval() มีส่วนต่างกันเพียงเล็กน้อยครับ
setTimeout()
- จะทำงานหลังจากเวลาที่กำหนดเพียง 1 ครั้ง
setInterval()
- จะทำงานหลังจากเวลาที่กำหนดไปเรื่อยๆ ทุกๆครั้ง
ตัวอย่าง
Code setTimeout() setTimeout(function () {
alert("Timeout");
}, 1000);
ตัวอย่าง
Code setInterval()
setInterval(function () {
alert("Interval");
}, 1000);
หลายคนอาจมีคำถามต่ออีกว่า ในเมื่อใช้ interval แล้วมันทำวนไปเรื่อยๆ แล้วถ้าเราจะหยุดมันละ
มันจึงมีอีกสั่งเพิ่มขึ้นมาก็ขึ้นwindow.clearInterval(xxx)
โดย xxx จะเป็นชื่อตัวแปรของ object Interval ที่เราจำเป็นจะต้องตั้งให้มันก่อนการเรียกใช้var intervalID = window.setInterval(function() {
alert("Hello Interval");
}, 1000);
หากเราต้องการจะหยุดเจ้า intervalID ก็เพิ่มแค่window.clearInterval(intervalID)