I was curious that what does setTimeout return. So I did a quick test:
var thing = setTimeout(function(){},1);
And what surprise me is that it gave me a number. 1351 Each time is different.
So is it really all it returns is a number? So I can actually do this as well?
clearTimeout(1351);
Very confusing…
It’s a handle (a unique identifier). When you create a timeout, the JavaScript runtime associates a handle with the timeout you created, and it can identify that timeout by the handle
setTimeout()returns. When you runclearTimeout(), it will know what timeout you’re talking about by looking at the unique handle you pass in.