Hướng dẫn settimeout nodejs - settimeout nodejs
Module timers trong NodeJSModule timers trong NodeJS là một global object dùng để đặt thời điểm các hàm được gọi ở một vài khoảng thời gian. Bởi các hàm timer là những global object nên không cần phải khai báo Show Các hàm timers khá là cần thiết trong quá trình lập trình, sử dụng nó trong NoedJS cũng giống như sử dụng với các ngôn ngữ khác như C, Python, Java,..nó giúp đặt thời gian các hàm có thể chạy một cách lặp lại. Timers phân chia thành 2 loại function chính: Set Timer function
Clear timer functions
Các hàm Timers trong NodeJSPhần này mình sẽ liệt kê ra các hàm timers hay dùng để các bạn có thể hiểu rõ hơn nhé. Các hàm timer trong NodeJS cũng giống như các API về timers cung cấp bởi trình duyệt ,nhưng các hàm timers trong NodeJS được xây dưng dựa trên NodeJS event loops (vòng lặp sự kiện).NodeJS event loops (vòng lặp sự kiện). Lưu ý rằng hàm timers này được trình biên dịch định nghĩa chứ không có sẵn trong ngôn ngữ javascript nha các bạn ! Timer setInterval()Hàm này có nhiệm vụ lặp lại sau một khoảng thời gian đặt trước. Để sử dụng ta có pháp:
Có 3 tham số mà chúng ta có thể thêm vào:
Nếu thời gian delay lớn hơn Chúng ta xem qua ví dụ bên dưới:
Trong đoạn code bên trên mình cho hàm callback chạy mỗi 1 giây mà truyền vào đó các agruments. Trong hàm callback sẽ log ra chuỗi reapeat !! và các tham số được truyền vào. Cho bạn nào chưa biết thì object agruments là object có sẵn trong các hàm chứa các tham số được truyền vào hàm đó. agruments. Trong hàm callback sẽ log ra chuỗi reapeat !! và các tham số được truyền vào. Cho bạn nào chưa biết thì object agruments là object có sẵn trong các hàm chứa các tham số được truyền vào hàm đó. Timer setTimeout()Khi hàm setTimeout được kích hoạt thì callback function trong Nodejs sẽ chạy sau một khoảng thời gian đặt trước. Ta có cú pháp như sau :setTimeout được kích hoạt thì callback function trong Nodejs sẽ chạy sau một khoảng thời gian đặt trước. Ta có cú pháp như sau :
có 3 tham số mà chúng ta có thể thêm vào:
Nếu thời gian delay lớn hơn 2147483647 hoặc nhỏ hơn 1 thì sẽ tự động set về 1. Các số không phải số nguyên sẽ tự động được chuyển sang số nguyên. Trong trường hợp tham số callback không phải là một hàm thì sẽ trả lại thông báo lỗi. Lấy ví dụ nhỏ để các bạn hiểu rõ hơn nha :
Trong ví dụ này hàm callback sẽ chỉ được chạy sau 2 giây. Nó khá là đơn giản nên bạn xem hình bên dưới sẽ hiểu hơn nhé ! Timer setImmediate NodeJSNhư cái tên nó hàm này sẽ chạy ngay lập tức. Ta có cú pháp như sau :
có 3 tham số mà chúng ta có thể thêm vào:
[…args] : bất cứ gì bạn muốn truyền vào hàm callback
Nếu thời gian delay lớn hơn 2147483647 hoặc nhỏ hơn 1 thì sẽ tự động set về 1. Các số không phải số nguyên sẽ tự động được chuyển sang số nguyên. Trong trường hợp tham số callback không phải là một hàm thì sẽ trả lại thông báo lỗi.
Lấy ví dụ nhỏ để các bạn hiểu rõ hơn nha :Trong ví dụ này hàm callback sẽ chỉ được chạy sau 2 giây. Nó khá là đơn giản nên bạn xem hình bên dưới sẽ hiểu hơn nhé ! Timer setImmediate NodeJS Như cái tên nó hàm này sẽ chạy ngay lập tức. Ta có cú pháp như sau : callback: hàm này sẽ được gọi ngay lập tức |