setTimeout("1") 神奇的用法,有人知道什么意思嘛
是想问setTimeout(function(){},1)吧?
是这样的,js本身单线程,任何事件只能等到线程空闲后才能执行。
那么,我们如果想要让某些代码在后续代码执行后,再执行呢?
前面说到任何事件都要等当前线程空闲才能执行,那么我们自然就可以用setTimeout构造一个定时器,先继续执行后续代码,等后续代码执行完成后,js再判断setTimeout是否超时(是的,js setTimeout只能保证执行时已超过设定时间,无法精确控制何时实行)。又由于我们设置的超时时间为1,那么默认等当前代码执行之后立即(假如没有其他事件刚好先来的话)执行setTimeout回调。
当然,如果超时时间设置个100的话,肉眼也不一定看的出明显差别
在放一些代码出来看看呀。不知道你要说明什么。
setTimeout("1");
557
setTimeout("1");
559
setTimeout("1");
561
setTimeout("1");
563
完全不懂啥意思?
setTimeout()
函数将返回一个标识符 ID,这个 ID 是唯一的(一般是整数,从1开始,每调用一次 setTimeout() 就加1) = =!
这个用法有时候用来二次初始化网页.
增加cpu负担,让你的网页更卡顿,你值得拥有。