包含 Vue、React、Angular,三大框架之比較:傳送門
框架 | 介紹 | 優點 |
---|---|---|
Vue | 輕量級的JavaScript框架 | 適合初學、入門 |
React | 由Facebook開發的JavaScript庫 | 兼容性佳、自由度高、開發效率高 |
Angular | 由Google開發並維護的全面型JavaScript框架 | 含有豐富的組件庫,一手包辦所有功能 |
技術上來說 React 並不是框架,而是一個用來渲染 UI 組件的函式庫
Search Engine Optimization,搜索引擎優化
(舉例:搜尋 網頁設計)
Single Page Application,單頁式應用程式
與手刻的不同處
Document Object Model,文件物件模型
瀏覽器載入網頁的過程會把 HTML 的內容轉成資料結構存放在執行環境中,那個結構就叫做 DOM。
把HTML文件的各個標籤定義成物件,這些物件最終會形成一個樹狀結構。
ex:document.getElementById就是用id在向DOM取得元素。
虛擬DOM,以 JavaScript 物件模擬特定 DOM 結構而產生的樹狀結構,最大功用為 提升效能。
React 只會更新畫面上有改動的部分,因為一般在網頁開發中,更新 DOM 是最耗費瀏覽器資源的動作之一,每當有大量的 DOM 操作時,非常容易造成效能的瓶頸,因此當我們開啟頁面時, React 透過 render 函式建構出一棵 DOM 樹出來,之後每次 state 或 props 變動,他不會直接去做修改,而是會建構出另一個虛擬的 DOM 出來(也就是 Virtual DOM),透過 DOM diff 演算法來將修改前後的 DOM 做比較,接著去修改差異處。