JS-執行緒與同步(Sync)非同步(Async)概念 這一篇有概述了同步(Sync)與非同步(Async)。

所以我們得把以前學得執行堆疊概念拿出來套用一下

接下來要繼續說明一下, 同步(Sync)與非同步(Async)的應用

[2022_11_02 新增SetInterval ]

參考資料: 六角學院

參考連結: 
談談JavaScript SetTimeout/SetInterval

給予小肝肝工程師支持吧'v': ETH/ERC20

JavaScript

SetTimeout() 用法

在講解執行順序之前, 我們會先說明事件佇列

在你執行到SetTimeout()所在的Function, 內部的陳述式會儲存到事件佇列

先記起來!

SetTimeout()方法1

  1. SetTimeout() 的delaytime單位(ms)
  2. SetTimeout() 要整個程式順序跑完以後才會執行
  3. SetTimeout() 只執行一次就會結束!
  4. SetTimeout( 非字串,delaytime ) 用這種方式, 主控台的執行效率會比較好

SetTimeout()方法2

不同在於

SetTimeout( 字串,delaytime) 裡面陳述, 我們用純字串

這種方式在主控台的執行效率較不好


執行順序

執行結果

SetInterval 用法

setInterval() 固定延遲了某段時間之後,才去執行對應的程式碼,然後「不斷循環」

SetInterval 結構