Windowï¼setImmediate() æ¹æ³
Deprecated
Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers. >
éæ å: è¯¥ç¹æ§å°æªæ ååãæä»¬ä¸å»ºè®®å¨ç产ç¯å¢ä¸ä½¿ç¨éæ åç¹æ§ï¼å 为å®ä»¬å¨æµè§å¨ä¸çæ¯ææéï¼ä¸å¯è½åçååæè¢«ç§»é¤ãä¸è¿ï¼å¨æ²¡ææ åé项çç¹å®æ åµä¸ï¼å®ä»¬å¯ä»¥ä½ä¸ºåéçæ¿ä»£æ¹æ¡ã
è¯¥æ¹æ³ç¨æ¥æä¸äºéè¦é¿æ¶é´è¿è¡çæä½æ¾å¨ä¸ä¸ªåè°å½æ°éï¼å¨æµè§å¨å®æåé¢çå ¶ä»è¯å¥åï¼å°±ç«å»æ§è¡è¿ä¸ªåè°å½æ°ã
è¯æ³
var immediateID = setImmediate(func, [param1, param2, ...]);
var immediateID = setImmediate(func);
immediateIDæ¯è¿æ¬¡ setImmediate æ¹æ³è®¾ç½®çå¯ä¸ IDï¼å¯ä»¥ä½ä¸ºwindow.clearImmediateçåæ°ãfuncæ¯å°è¦æ§è¡çåè°å½æ°
ææåæ°é½ä¼ç´æ¥ä¼ ç»ä½ ç彿°ã
夿³¨
clearImmediate() æ¹æ³å¯ä»¥ç¨æ¥åæ¶éè¿ setImmediate 设置çå°è¦æ§è¡çè¯å¥ï¼å°±å clearTimeout() 对åºäº setTimeout() 䏿 ·ã
è¯¥æ¹æ³å¯ä»¥ç¨æ¥æ¿ä»£ setTimeout(fn, 0) 廿§è¡ç¹éçæä½ã
å¯ä»¥éè¿ä»¥ä¸å ç§æ¹å¼æ¥æ¨¡æè¯¥ç¹æ§ï¼
postMessage()å¯ä»¥è¢«ç¨æ¥è§¦åä¸ä¸ª immediate ä½ä¼äº§çåè°ã请注æï¼Internet Explorer 8 å å« postMessage çåæ¥çæ¬ï¼è¿æå³çå®ä¸è½è¢«ç¨æ¥ä½ä¸ºä»£æ¿åã- MessageChannel å¯ä»¥å¨ Web Workers å é¨å¾å¥½ç被使ç¨ï¼è postMessage çè¯ä¹æå³çå®ä¸è½å¨é£ä½¿ç¨ã
setTimeout(fn, 0)å¯ä»¥ä½¿ç¨ï¼ç¶èæç § HTML è§èï¼åµå¥æ·±åº¦è¶ è¿ 5 级ç宿¶å¨ï¼ä¼è¢«éå¶å¨ 4 毫ç§ï¼å®æ²¡æä¸ºsetImmediateç天ç¶åæ¶æ§æä¾åéç polyfillã
ææè¿äºææ¯é½è¢«çº³å ¥ robust setImmediate polyfill ä¸ã