關於javascript的幾個小實驗

2021-07-03 06:29:41 字數 1912 閱讀 5331

猜想:不會的, 現代的瀏覽器應該已經做了優化。

實驗方法:在頁面中放一段執行時間超過2

秒的js

**。然後在阻塞**的後面判斷能不能去的後續的

dom元素。

靠!沒想到是這樣的結果!   script

檔案果真阻塞了

dom的解析。 瀏覽器真的是乙個檔案乙個檔案的解析的。

實驗** 

外部js

指令碼  

var begin = new date();

var end = new date();

while((end.valueof() - begin.valueof())<(1000*15)){

end = new date();

var testdom = document.getelementbyid("test");

console.log(testdom.innerhtml);

html

doctype

html

public

"-//w3c//dtd html 4.01 transitional//en">

<

html

>

<

head

>

<

title

>test

title

>

<

script

src="testhelloworld.js"

>

script

>

head

>

<

body

>

<

divid="test"

>

這是乙個測試dom

div>

body

>

html

>

2,是不是

dom元素載入,解析完後就會觸發

onload

函式呢?

猜想:不會! 有一次,我在dom

文件的最後加了一段時間標記。然後又在

onload

事件的開始加了乙個時間標記。 然後算的之間的時間間隔達一秒鐘。我不知道瀏覽器在這個時間段中幹嘛了。

猜想:瀏覽器一定是先把dom

文件解析完後,然後等待已經請求的資源,然後按續解析他們。

試驗方法:在html

的最後記下時間戳,然後在

onload

的最後記下時間戳。   

這次當頁面載入完後  馬上就執行onload

中的時間了。 而我們公司的專案卻要

1秒後才執行。 不知道為什麼   

相關**  

js**   

html**  

doctype

html

public

"-//w3c//dtd html 4.01 transitional//en">

<

html

>

<

head

>

<

title

>test

title

>

head

>

<

body

>

body

>

<

script

>

window.begin = new date();

window.onload = function(){

var end = new date();

console.log(end.valueof() - begin.valueof());

script

>

html

>

javascript語法的幾個難點

作用域,作用域鏈以及with的原理 作用域與閉包 object.constructor 物件的建構函式 object.hasownproperty 檢查屬性是否被繼承 object.isprototypeof 乙個物件是否是另乙個物件的原型 object.propertyisenumerable 是...

javascript編碼的幾個方法

escape 函式可對字串進行編碼,這樣就可以在所有的計算機上讀取該字串。引數描述 string 必需。要被轉義或編碼的字串。已編碼的 string 的副本。其中某些字元被替換成了十六進製制的轉義序列。該方法不會對 ascii 字母和數字進行編碼,也不會對下面這些 ascii 標點符號進行編碼 其他...

javascript陣列的幾個常用姿勢

本文將分享幾個在專案中常用的陣列方法 不定期有乾貨更新哦,歡迎watch,star const sortary 1,5,4,3,2,6,7 1.按陣列元素大小從小到大進行排序 sortary.sort a,b a b 1,2,3,4,5,6,7 2.按陣列元素大小從大到小進行排序 sortary.s...