當咱們在瀏覽器中輸入一個url時,背後都發生了什麼,想要弄明白這個問題首選咱們要知道瀏覽器的工做原理是什麼?css
瀏覽器的工做原理就是,web瀏覽器與web服務器之間經過http協議進行通信的過程,c/s的握手協議就是http協議html
瀏覽器接受到一個url以後發生的過程大體以下圖:web
接下來講下html裏的內嵌資源是如何請求加載的 html的內嵌請求資源主要就是js,css,image瀏覽器
1.js和css的資源加載都是串行的,由於瀏覽器須要一個穩定的dom樹結構,js中頗有可能有代碼會改變dom結構,瀏覽器爲了防止這種狀況就會阻止其餘下載和呈現服務器
2.由於js有語法定義,若是一個html裏引用多個js文件的狀況下,第二個文件裏的函數頗有可能引用了第一個文件裏的變量和函數,此時若是先加載了第二個js瀏覽器就會解釋錯誤,因此js要按照順序串行加載,咱們開發者在寫代碼時也要注意js的書寫順序dom
3.css的加載也是串行的,原理和js同樣函數
4.圖片的加載是並行的,能夠同時加載幾個,而且加載完成之後當即顯示url