国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

淺談Javascr-ipt線程及定時機制

2019-11-02 15:43:19
字體:
來源:轉載
供稿:網友

  這篇文章主要介紹了淺談Javascript線程及

姐妹網名[www.la240.com/html2017/1/3/]
定時機制的相關資料,需要的朋友可以參考下

  setTimeout、setInterval的使用

  Javascript api文檔中定義setTimeout和setInterval第二個參數意義分別為間隔多少毫秒后回調函數被執行和每隔多少毫秒回調函數被執行。但隨著工作經驗的積累,我們發現事實并非如此。

  比如

  ?

1 2 3 4 5 div.onclick=function(){ setTimeout(function(){ document.getElementById('input').focus(); },0); }

  就解釋不通了,立即執行就立即執行唄,干嘛還要設置個定時兜個圈子呢。

  又有一天你寫了下面一段代碼

  ?

1 2 setTimeout(function(){while(true){}},100); setTimeout(function(){alert('你好');},200);

  第一行代碼死循環,結果造成第二行alert始終沒有出現,為啥哩?

  單線程or多線程?

  原來,Javascript引擎是單線程運行的,瀏覽器只有一個線程在運行JavaScript程序。因為單線程的設計,所以免去了復雜的多線程同步問題。

  當設置一個定時的時候,瀏覽器會在設定的時間后將你指定的回調函數插入任務序列,而非立即執行。如果設定定時時間為0,表示立即插入任務序列,而不是立即執行,仍然要等隊列中任務執行完畢,輪到你,你才執行。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄂托克前旗| 衡东县| 永顺县| 广东省| 苏尼特左旗| 玛曲县| 新疆| 马尔康县| 屯留县| 柞水县| 惠来县| 冀州市| 衡南县| 富顺县| 隆尧县| 仪陇县| 河津市| 漳州市| 武陟县| 和平县| 兴隆县| 文化| 呼伦贝尔市| 葫芦岛市| 普兰店市| 唐海县| 八宿县| 鄢陵县| 英吉沙县| 汉中市| 竹溪县| 新昌县| 红河县| 正蓝旗| 东阳市| 浦江县| 邯郸县| 南溪县| 梅河口市| 灵石县| 兴安县|