非同步

非同步 (async)

  • JavaScript 語言的一大特點就是單執行緒,同一個時間只能做一件事。
  • 所有事件可以分為 synchronous 和 asynchronous。
  • 同步事件指的是,在主線程上排隊執行的任務,只有前一個任務執行完畢,才能執行後一個任務。
  • 非同步事件指的是,先進入 task queue,task queue 通知主線程,若主線程有空該任務才會進入主線程執行。
function now() {
  return 'Hello......';
}

function later() {
 console.log('step2');
  message += 'World';
  console.log(message);
}

console.log('step1');
var message = now();
console.log(message);
setTimeout(later, 5000);
console.log('step3');
var fs = [];

for (var i = 0; i < 10; i++){
  fs.push(function() {
    console.log(i);
  })
}

fs.forEach(function (f) {
  f();
})

事件迴圈 (event loop)

延伸閱讀

results for ""

    No results matching ""