簡體   English   中英

外部托管的javascript文件的代碼能否與Page中的window.load並行執行

[英]Can an externally hosted javascript file's code get executed parallel with window.load in a Page

關於window.onload調用,外部托管的javascript文件的執行流程是什么。 假設外部文件中包含以下代碼:

(function() {

   console.log('logging1...');
})();

var func1 = function() {
   console.log('func1 invoked!');
};

func1();

在觸發window.load之前,

1.)以上代碼的執行流程或輸出是什么?

2.)window.load之后是否有可能執行文件的任何代碼?

3.)與window.load並行,可以執行外部文件代碼。

1.)以上代碼的執行流程或輸出是什么?

通常是:

logging1...
func1 invoked!

這里的函數調用順序沒有任何歧義。 但是請注意, console.log()尚未標准化,無法立即打印輸出。 如果不按console.log()函數調用的順序打印給定的參數,它很可能可以同步返回。

2.)window.load之后是否有可能執行文件的任何代碼?

否(當然,除了事件偵聽器,計時器等中的代碼之外)。

加載事件在文檔加載過程結束時觸發。 此時,文檔中的所有對象都在DOM中,並且所有圖像, 腳本 ,鏈接和子框架均已完成加載 https://developer.mozilla.org/de/docs/Web/API/GlobalEventHandlers/onload

3.)與window.load並行,可以執行外部文件代碼。

你說並行是什么意思? JavaScript是單線程的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM