因此伺服器端代碼永遠先於客戶端代碼執行完成。
<script> 出現順序即載入/執行順序。<script src="..."> 同步阻塞後續內容渲染(除非加 async/defer)。<script> 區塊內,變數/函數宣告提升,但跨 <script> 區塊則需先宣告後使用。範例:頁面初始化發送 AJAX 取資料,成功回調中處理耗時,導致後續同步代碼(如 confirm()、loadTree())先執行,造成全域變數尚未賦值即被使用。
setTimeout(fn, delay):延遲執行,讓事件迴圈處理完畢。success 回調或 .then() 中。