Javascript : setTimeout() VS setInterval()

หลายคนคงสงสัยว่าเจ้า setTimeout() กับ setInterval() มันแตกต่างกันยังไง

มันก็ตั้งเวลาได้เหมือนกันนิ

 

ของแตกต่างของ 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)

 

 

ขอบคุณครับ

Ima8.

08/05/58

Leave a Reply