json钓账,異步加載碴犬,時間線

json

JSON是一種傳輸數(shù)據(jù)的格式(以對象為樣板,本質(zhì)上就是對象梆暮,但用途有區(qū)別服协,對象就是本地用的,json是用來運輸?shù)模?br> JSON.parse(); string -->json
JSON.stringify(); json--> string

domTree + cssTree = randerTree
reflow 重排 : dom節(jié)點的刪除惕蹄,添加
dom節(jié)點的寬高變化蚯涮,位置變化 display none -->block offsetWidth offsetLeft

異步加載js

javascript異步加載的三種方案
1.defer異步加載,但要等到dom文檔全部解析完才會被執(zhí)行卖陵。只有IE能用遭顶,也可以將代碼寫到內(nèi)部。
2.async異步加載泪蔫,加載完就執(zhí)行棒旗,async只能加載外部腳本(src="tools.js"),不能把js寫在script標(biāo)簽里撩荣。
執(zhí)行時也不阻塞頁面
3.創(chuàng)建script铣揉,插入到DOM中,記載完畢后callBack餐曹,

<script  type = "text/javascript">
function  loadScript(url,  callback){//這個方法是讓script加載完之后再去執(zhí)行
 var script  = document.createElement('script');
  script.type = "text/javascript";
if(script.readyState){
      script.onreadystatechange = function(){//IE
     if(script.readyState  ==  "complete"  ||  script.readyState == "loaded"){
      callback();
      }
}
}else{
  script.onload = function(){//Safari  chrome  firefox  opera
    callback();
  }
}
script.src = url;
document.head.appendChild(script);//把script插入head里逛拱,讓script開始執(zhí)行,沒有這步即使全加載完畢也執(zhí)行不了
}
loadScript('demo.js',function(){
    test();
});
</script>

js加載時間線

js時間線
1.創(chuàng)建Document對象台猴,開始解析web頁面朽合。解析HTML元素和他們的文本內(nèi)容后添加Element對象和Text節(jié)點到文檔中俱两。這個階段document.readyState = "loading"。
2.遇到link外部css曹步,創(chuàng)建線程加載宪彩,并繼續(xù)解析文檔。
3.遇到script外部js讲婚,并且沒有設(shè)置async尿孔,defer,瀏覽器加載筹麸,并阻塞活合,等待js加載完成并執(zhí)行該腳本,然后繼續(xù)解析文檔竹捉。
4.遇到script外部js芜辕,并且設(shè)置有as ync,defer块差,瀏覽器創(chuàng)建線程加載侵续,并繼續(xù)解析文檔。對于async屬性的腳本憨闰,腳本加載完成后立即執(zhí)行状蜗。(異步禁止使用document.write())
5.遇到img等,先正常解析dom結(jié)構(gòu)鹉动,然后瀏覽器異步加載src轧坎,并繼續(xù)解析文檔。
6.當(dāng)文檔解析完成泽示,document.readyState = “interactive”
7.文檔解析完成后缸血,所有設(shè)置defer的腳本會按照順序執(zhí)行。(注意與async的不同械筛,但同樣禁止使用document.write())
8.document對象觸發(fā)DOMConcentLoaded事件捎泻,這也標(biāo)志著程序執(zhí)行從同步腳本執(zhí)行階段,轉(zhuǎn)化為事件驅(qū)動階段埋哟。(監(jiān)視著dom解析完成再去執(zhí)行函數(shù))
9.當(dāng)所有async的腳本加載完成并執(zhí)行后笆豁,img等加載完成后,document.readyState = "complete"赤赊,window對象觸發(fā)事件闯狱。
10.從此,以異步響應(yīng)方式處理用戶輸出抛计,網(wǎng)絡(luò)事件等哄孤。

<div style = "width:100px;  height:100px;  
background-color:red;"></div>
<script  type ="text/javascript'>
        window.onload = function(){
          document.write('a');
        }
</script>
在整個文檔加載完畢document.write清除了所有的文檔流,把html里面
的東西都消除了吹截,例如div录豺,只打印了a朦肘。所以異步加載也不能使用
<script  type ='text/javascript'>
console.log(document.readyState);
document.onreadystatechange = function(){
      console.log(document.readyState);
}
document.addEventListener('DOMContentLoaded',function (){
    console.log('a');
},  false);
return loading  interactive  a   complete
//DOMContentLoaded是dom解析完才執(zhí)行的,而且只能用listener這個方法

window.onload 是文檔全加載完執(zhí)行的
當(dāng)dom解析完就執(zhí)行的部分
$(document).ready(function(){

})    jq方法
</script>





最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末双饥,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子弟断,更是在濱河造成了極大的恐慌咏花,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,997評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阀趴,死亡現(xiàn)場離奇詭異昏翰,居然都是意外死亡,警方通過查閱死者的電腦和手機刘急,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評論 3 392
  • 文/潘曉璐 我一進店門棚菊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人叔汁,你說我怎么就攤上這事统求。” “怎么了据块?”我有些...
    開封第一講書人閱讀 163,359評論 0 353
  • 文/不壞的土叔 我叫張陵码邻,是天一觀的道長。 經(jīng)常有香客問我另假,道長像屋,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,309評論 1 292
  • 正文 為了忘掉前任边篮,我火速辦了婚禮己莺,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘戈轿。我一直安慰自己凌受,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,346評論 6 390
  • 文/花漫 我一把揭開白布凶杖。 她就那樣靜靜地躺著胁艰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪智蝠。 梳的紋絲不亂的頭發(fā)上腾么,一...
    開封第一講書人閱讀 51,258評論 1 300
  • 那天,我揣著相機與錄音杈湾,去河邊找鬼解虱。 笑死,一個胖子當(dāng)著我的面吹牛漆撞,可吹牛的內(nèi)容都是我干的殴泰。 我是一名探鬼主播于宙,決...
    沈念sama閱讀 40,122評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼悍汛!你這毒婦竟也來了捞魁?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,970評論 0 275
  • 序言:老撾萬榮一對情侶失蹤离咐,失蹤者是張志新(化名)和其女友劉穎谱俭,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體宵蛀,經(jīng)...
    沈念sama閱讀 45,403評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡昆著,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,596評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了术陶。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片凑懂。...
    茶點故事閱讀 39,769評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖梧宫,靈堂內(nèi)的尸體忽然破棺而出接谨,到底是詐尸還是另有隱情,我是刑警寧澤祟敛,帶...
    沈念sama閱讀 35,464評論 5 344
  • 正文 年R本政府宣布疤坝,位于F島的核電站,受9級特大地震影響馆铁,放射性物質(zhì)發(fā)生泄漏跑揉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,075評論 3 327
  • 文/蒙蒙 一埠巨、第九天 我趴在偏房一處隱蔽的房頂上張望历谍。 院中可真熱鬧,春花似錦辣垒、人聲如沸望侈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽脱衙。三九已至,卻和暖如春例驹,著一層夾襖步出監(jiān)牢的瞬間捐韩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評論 1 269
  • 我被黑心中介騙來泰國打工鹃锈, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留荤胁,地道東北人。 一個月前我還...
    沈念sama閱讀 47,831評論 2 370
  • 正文 我出身青樓屎债,卻偏偏與公主長得像仅政,于是被迫代替她去往敵國和親垢油。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,678評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1.ios高性能編程 (1).內(nèi)層 最小的內(nèi)層平均值和峰值(2).耗電量 高效的算法和數(shù)據(jù)結(jié)構(gòu)(3).初始化時...
    歐辰_OSR閱讀 29,373評論 8 265
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對...
    cosWriter閱讀 11,098評論 1 32
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5圆丹? 答:HTML5是最新的HTML標(biāo)準(zhǔn)滩愁。 注意:講述HT...
    kismetajun閱讀 27,476評論 1 45
  • 早上5.15分起來,6點又躺下了辫封。 7.50起床惊楼,8.20出發(fā)9.00到達老板家。 9.20出發(fā)秸讹,到漢口接汪總一起...
    阿麥_bdb1閱讀 71評論 0 0
  • 情不知何起璃诀,亦不知所終。 轉(zhuǎn)眼離家有兩月余蔑匣,日子從秋初步入到了晚秋劣欢,再過幾天就是立冬了。不知是因秋季裁良,晚秋的萬物蕭...
    牧野俊風(fēng)閱讀 605評論 0 0