2018Web前端面試試題總結及答案
1、完成的http請求過程需要經過哪些環節?
1)、域名解析;
2)、發起TCP的3次握手;
3)、建立TCP連線後發起http請求,瀏覽器得到html程式碼;
4)、瀏覽器解析HTML程式碼,並請求HTML程式碼中的資源(如js, css,圖片)
5)、瀏覽器對頁面進行渲染頁面給使用者;
2、簡述瀏覽器渲染頁面的過程。
1)、基本流程:
解析HTML以構建dom樹 –> 構建render樹 –>佈局render樹 —> 繪製render樹。
(1) 、因此瀏覽器會解析HTML、svg、XHTML這三種檔案生成一個Dom tree.
(2)、解析css產生一個規則樹
(3)、js指令碼,主要是通過DOM API和CSS API來操作DOM Tree和css Rule Tree。
3、有哪些方式可以實現多個頁面見通訊?
使用cookie,使用web worker,使用localeStorage和sessionStorage
三者的區別:
(1)、 cookie:相容性好,只能存在不大於4kb,可永久存在,要關閉標籤頁回話立即結束時,不要cookie,因為它還會很可能存在一段時間,即使是session-cookie。
(2)、sessionStorage:不支援跨標籤頁共享資料集,比如,每次新開啟一個標籤頁都要求使用者重新登入。
(3)、localStorage:此處作用localstorage事件來解決這個問題。思路:當開啟一個新的標籤的時候,先詢問是否有sessionstorage,有的話就通過localstorage事件向新頁面傳遞sessionstorage,新頁面獲取後設定。
4、同步載入和非同步載入分別有什麼優缺點?
同步請求即是當前發出請求,瀏覽器什麼都不做,必須等到請求完成返回資料之後,才能執行後續的程式碼,相當於是排隊。
非同步請求
當發出請求的同時,瀏覽器可以寄繼續做任何事,ajax請求並不會影響頁面的載入與使用者的操作
5、對效能優化認識:
1)、 減少http請求次數;
2)、減少DNS查詢次數;
3)、快取ajax;
4)、延遲載入;
6、如何對網站的檔案和資源進行優化
1)、檔案合併(目的是減少http請求);
2)、檔案壓縮(目的是直接減少檔案下載的體積)
3)、使用cdn託管資源
4)、使用快取
5)、gizp壓縮你的js和css檔案
6)、反向連結,網站外連結優化
7、http狀態碼有哪些?分別代表什麼含義?
(1)、資訊類:表示接收到請求並且繼續處理
100 —-> 客戶必須繼續發出請求
1001—–>客戶要求伺服器根據請求轉換HTTP協議版本
(2)、響應成功:表示動作被成功地完成,所請求的資源傳送回客戶端
200 —>表明請求被成功的完成,所請求的資源傳送回客戶端
201 —>提示知道新檔案的url;
202 —–>接受和處理、但處理未完成
203 —-> 返回資訊不確定或不完整
204——請求收到,但返回資訊為空
205——伺服器完成了請求,使用者代理必須復位當前已經瀏覽過的檔案
206——伺服器已經完成了部分使用者的GET請求
(3)、重定向類:為了完成指定的動作,必須接受進一步處理
300——請求的資源可在多處得到
301——本網頁被永久性轉移到另一個url
302——請求的網頁被轉移到一個新的地址,但客戶訪問仍繼續通過原始URL地址,重定向
303—–建議客戶訪問其他url或者訪問方式
304——自從上次請求後,請求的網頁未修改過,伺服器返回此響應時,不會返回網頁內容,代表上次的文件已經被快取了,還可以繼續使用
305——請求的資源必須從伺服器指定的地址得到
306——前一版本HTTP中使用的程式碼,現行版本中不再使用
307——申明請求的資源臨時性刪除
4**(客戶端錯誤類):請求包含錯誤語法或不能正確執行
400——客戶端請求有語法錯誤,不能被伺服器所理解
401—–請求未經授權你,這個狀態程式碼必須和www-Authenticate報頭域一起使用;
404——一個404錯誤表明可連線伺服器,但伺服器無法取得所請求的網頁,請求資源不存在;
405——使用者在Request-Line欄位定義的方法不允許;
5**(服務端錯誤類):伺服器不能正確執行一個正確的請求
HTTP 500 - 伺服器遇到錯誤,無法完成請求。
HTTP 502 - 閘道器錯誤
HTTP 503:由於超載或停機維護,伺服器目前無法使用,一段時間後可能恢復正常
8、實現兩等列高的例子
方法二:
方法一:
<style>
.mainbox{
width: 600px;
margin: 0 auto;
}
.col{
display:table-cell;
width: 400px;
}
.col:first-child{
background: #D0E9C6;
}
.col:last-child{
background: #F05B4F;
}
</style>
<div class="mainbox">
<div class="col">
<h1>雖然很難過,一切很糟糕啊啊啊啊!</h1>
<p>我們本來及時很好的吧回到家看到!</p>
</div>
<div class="col">
<p>我們應該好好學習的,你說呢!</p>
</div>
</div>
.mainBox{
display: flex;
}
.left{
flex: 1;
}
.right{
width: 300px;
}
.right{
background: #F05B4F;
}
.left{
background: #E4B9B9;
}
我感覺自己都快要窒息了!。。。。
相關文章
- 2017前端面試題及答案總結|掘金技術徵文前端面試題
- 2018阿里巴巴前端面試總結(題目+答案)阿里前端面試
- 面試分享:2018阿里巴巴前端面試總結(題目+答案)面試阿里前端
- 前端面試題(總結)前端面試題
- 前端面試題總結前端面試題
- 24個Jvm面試題總結及答案JVM面試題
- 前端面試題及其總結前端面試題
- 前端面試題(附答案)前端面試題
- 【總結】Python爬蟲面試題及答案(二)Python爬蟲面試題
- 9道前端面試題及答案,趕緊收藏!前端面試題
- 前端面試題總結(定期更新)前端面試題
- 12個iOS技術面試題及答案總結iOS面試題
- 前端面試題雜燴(答案)前端面試題
- 2020 前端面試 | 第二波面試題總結前端面試題
- 前端面試指南之JS面試題總結前端JS面試題
- 【面試】社招中級前端筆試面試題總結-答案及擴充前端筆試面試題
- 前端面試題總結(陸續更新.......)前端面試題
- 常見的10道Web前端面試題及答案分享!Web前端面試題
- 2018前端面試總結前端面試
- 2019前端面試總結前端面試
- 【前端面試】Vue面試題總結(持續更新中)前端Vue面試題
- 2019年前端面試題目總結前端面試題
- ASP net core面試題彙總及答案面試題
- Java常見面試題及答案彙總Java面試題
- 面試福利—最強前端面試題(二)(含答案)前端面試題
- 前端面試題 | JS部分(附帶答案)前端面試題JS
- python後端面試題答案(僅參考)Python後端面試題
- 面試過了,總結測試工程師面試題(含答案)工程師面試題
- 2023面試-答案總結面試
- 附答案!超全SpringBoot面試題總結Spring Boot面試題
- 前端面試總結之:js跨域問題前端面試JS跨域
- 前端面試題總結——HTML(持續更新中)前端面試題HTML
- 經典Java面試題彙總及答案解析Java面試題
- Web前端經典面試試題及答案(參考連結)Web前端面試
- 2019年底前端面試及答案-html/css前端面試HTMLCSS
- 2018.7 前端面試題大總結 很詳細【下】前端面試題
- 技術乾貨:Kotlin面試題彙總及答案Kotlin面試題
- 技術乾貨:Tomcat面試題彙總及答案Tomcat面試題