通識面試題目

請問 HTTP 有幾種請求方式及其各自的用途是什麼

常用的有八種請求方式

  1. GET 請求

    GET 方法請求一個指定資源

  2. POST 請求

    POST 方法用於將實體提交到指定的資源

  3. PUT 請求

    替換某些資源

  4. DELETE 請求

    刪除指定的資源

  5. HEAD 請求

    HEAD 方法請求一個與 GET 請求的響應相同的響應,但沒有響應體

  6. OPTIONS 請求

    允許客戶端查看服務器的相關參數

  7. TRACE 請求

    跟蹤請求

  8. CONNECT 請求

    預留給能夠將連接改爲管道方式的代理服務器

請問從瀏覽器輸入 URL 到頁面顯示發生了什麼

  1. 在瀏覽器地址欄輸⼊ URL

  2. 瀏覽器會先去緩存中尋找資源,如果在緩存中已經存在並且尚未過期,那麼就直接利用。否則跟目標主機建立連接

  3. 瀏覽器解析 URL 組裝成爲 HTTP 請求報文

  4. 利用 socket 與目標 IP 建立 TCP 連接,俗稱“三次握手”

  5. TCP 鏈接建⽴後開始發送 HTTP 請求

  6. 服務器接受請求並將響應的數據組裝成爲響應報⽂通過 TCP 連接發送回瀏覽器

  7. 瀏覽器接收響應,關閉 TCP 連接,俗稱“四次握手”

  8. 瀏覽器根據響應資源的類型採用相對應的處理(假設資源爲 HTML ⽂檔)

  9. 解析 HTML ⽂檔,構件 DOM 樹,構造 CSSOM 樹,下載相關資源,執⾏ js 腳本

  10. HTML 解析過程中會逐步顯示⻚⾯

談談你對網站性能優化的處理

  1. 合併文件,減少 HTTP 請求

  2. 儘量減少 DOM 操作

  3. 服務端可以使用網絡分發

  4. 將 js 文件放置在頁面底部

  5. 進行圖片壓縮

  6. 減小 cookie 大小

  7. 將樣式表放到頁面頂部

請問 HTTP 狀態碼及其含義

  1. 1xx 這一類狀態碼錶示 請求已被接受,需要繼續處理

  2. 2xx 這一類狀態碼錶示 請求已成功 被服務器接收

  3. 3xx 這一類狀態碼錶示 重定向

  4. 4xx 這一類狀態碼錶示 客戶端錯誤

  5. 5xx 這一類狀態碼錶示 服務端錯誤

談談你對前端瀏覽器存儲的理解

  1. localStorage 大概能夠存儲 5M 左右的數據,只要不手動刪除數據會永久存儲

  2. sessionStorage 大概能夠存儲 5M 左右的數據,只瀏覽器關閉就清空

  3. cookie 最大能夠存儲 4KB, 作爲請求頭的一部分

  4. indexedDB 這是瀏覽器提供的本地數據庫, 沒有存儲大小限制

請問 xhtml 和 html 的區別

xhtml 指的是 可擴展超文本標記語言,html 指的是 超文本標記語言, xhtml 相比於 html 在語法上面更加嚴格,html 標籤不區分大小寫 xhtml 所有標籤都必須小寫,在 xhtml 只要網頁中出現一處錯誤,則瀏覽器停止解析,而 html 語言不會出現這種情況

談談漸進增強和優雅降級

漸進增強 指的是先針對低版本瀏覽器進行頁面構建,先保證基本的用戶需求,然後再針對高級瀏覽器進行功能追加,以達到更好的用戶體驗。

優雅降級 指的是一開始就構建完整的功能,然後再針對部分瀏覽器做兼容處理

DOCTYPE 有何作用

DOCTYPE 告知瀏覽器的解析器, ⽤什麼⽂檔類型規範來解析這個⽂檔

請解釋 重繪、重排(迴流) 再談一談處理方案

重繪 指的是當頁面元素樣式改變不影響頁面佈局,不影響元素位置。

重排 頁面佈局發生了改變,需要重新渲染 DOM 。

處理方案主要從減少 DOM 操作入手,比如可以採用文檔片段 fragment

如果需要⼿動寫動畫,你認爲最⼩時間間隔是多久,爲什麼?(阿⾥)

多數顯示器默認頻率是 60Hz ,即 1 秒刷新 60 次,所以理論上最⼩間隔爲
1/60*1000ms = 16.7ms

對於自適應佈局,你有何高見

  1. 採用 rem 和 em 進行寬度設置
  2. 採用百分比,儘量不要固定像素
  3. 採用彈性佈局
  4. 編寫多套樣式代碼
  5. 媒體查詢

rgba()和 opacity 的透明效果有什麼不同

opacity 作⽤於元素,以及元素內的所有內容的透明度。⽽ rgba() 只作⽤於元素的顏⾊或其背景⾊,不會將內容也變透明。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章