2021.10.21 - 學習記錄

  1. 一個算法: 歐幾里得算法,最大公約數
  2. 前端學習知識點:很多網站不常用table iframe這兩個元素,知道原因嗎?

證明:

1. 算法:

// 求兩個數的最大公約數
public class GreatestCommonDivisor {
    public static int getGreatestCommonDivisor (int p, int q) {
        if (q == 0) return p;
        int r = p % q;
        return getGreatestCommonDivisor(q, r);
    }
}

2. 面試題:

很多網站不常用table iframe這兩個元素,知道原因嗎?
答:因爲瀏覽器頁面渲染的時候是從上至下的,而table 和 iframe 這兩種元素會改變這樣渲染規則,他們是要等待自己元素內的內容加載完才整體渲染。用戶體驗會很不友好。

iframe

壞處:

  • 是一個單獨的容器,因此不會應用全局的CSS樣式
  • 會和網頁共用域名連接池,因此可能由於iframe佔用了連接數導致加載阻塞
  • 搜索引擎爬蟲不易爬取,不利於SEO
  • 相比直接操作DOM元素,使用iframe更耗費資源

好處:

  • 可以用其展示廣告,可以避免由於添加廣告而網站被爬蟲拒絕收錄的情況

table

壞處:

  • table的內容會等內部的所有內容加載完成纔會顯示,比基於div+css實現的表格佈局加載速度慢。
  • 會導致網頁語義發生錯誤,不利於無障礙功能
  • 改動內部內容會造成整個table重繪,消耗更多資源

好處:

  • 前期廣泛用於後臺管理系統,由於普通的後臺管理系統大多都是表格佈局,基於table編程難度低
    且面向內網的管理系統對性能要求沒那麼高
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章