วันจันทร์ที่ 1 พฤศจิกายน พ.ศ. 2553

setTimeout กับ setInterval นั้นมีข้อแตกต่างกัน

หลายคนอาจเคยเขียน JavaScript ในการจับเวลามาแล้ว แต่ทราบหรือไม่ว่าการใช้ setTimeout กับ setInterval นั้นมีข้อแตกต่างกันอยู่
setTimeout ใช้สำหรับการเรียก function ใดๆ ให้ทำงานหลังจากเวลาที่เรากำหนดไว้ เมื่อ function นั้นๆ ถูกเรียนแล้วมันก็จะจบการทำงานไป หากต้องการให้มันหยุดทำงานก่อนเวลาที่กำหนดไว้ก็ให้ใช้ clearTimeout มันก็จะหยุดให้เรา
ตัวอย่างการใช้งาน

var timeoutID = setTimeout(function() {alert("Hello TimeOut");}, 1000);

วิธีการยกเลิก timeout
clearTimeout(timeoutID);
เราจำเป็นต้องจำค่า ID ที่ได้จาก setTimeout เพื่อนำมาบอกให้มันหยุดทำงาน


setInterval จะเป็นการเรียกไปเรื่อยๆ จนกว่าเราจะสั่งให้มันหยุดทำงาน ด้วยคำสั่ง clearInterval
ตัวอย่างการใช้งาน

var intervalID = window.setInterval(function() {alert("Hello Interval");}, 1000);

วิธีการยกเลิก Interval
window.clearInterval(intervalID);

เช่นเดียวกับ clearTimeout ครับ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น