深刻理解 JavaScript 事件循環(一)— event loop

javascript事件循環和異步測試:javascript

console.log("script start");    
    setTimeout(function () {
             console.log("setTimeout");
         }, 0);   
     //具體數字不定,這取決於你的硬件配置和瀏覽器
     for(var i = 0; i < 1000000; i ++){
         //do something        
     }   
     console.log("script end");

 

  var arr = new Array(10000);
    arr.fill(1);
    function asyncForEach(array, handler){
        var t = setInterval(function () {
            if(array.length === 0){
                clearInterval(t);
            }else {
                handler(arr.shift());
            }
        }, 0);
    }

    //異步遍歷
    asyncForEach(arr, function (value) {
        console.log(value);
    });

    //同步遍歷
    arr.forEach(function (value, index, arr) {
        console.log(value);
    });

來源:http://www.javashuo.com/article/p-ziljlfgd-db.htmlhtml

相關文章
相關標籤/搜索