+1
setTimeout trong javascript
Mình đang làm 1 project nodejs. Thì bị mắc khúc này, rất mong mọi người giúp đỡ.
Ví dụ có 1 biến boolean A = false. Mỗi lần A thay đổi thành true sau 10s thì chạy function B. Nhưng nếu đang trong thời gian đếm 10s mà đổi false rồi true 1 lần nữa thì đếm lại 10s rồi mới chạy function B.
Mình đã nghĩ tới việc dùng setTimeout. Mỗi khi A => true thì cancel biến setTimeout đang chạy (nếu có) và tạo biến setTimeout 10s mới để chạy function B. Mà chưa biết cách đúng để thực hiện.
Cảm ơn ạ!
TAMIX
@tuananhbfs
•
Thêm một bình luận
1 CÂU TRẢ LỜI
+1
Bạn thử ý tưởng này xem sao nhé, chúc thành công.
const _time = 10000;
let isClick = false;
var handler;
function clickSomeThink(){
if(handler) clearTimeout(handler)
isClick = true;
handler = setTimeout(()=>{
func b();
isClick = false;
},_time);
}