面試題:對Vue的響應式數據/雙向數據綁定原理的理解
VUE實現雙向數據綁定的原理就是利用了 Object.defineProperty() 這個方法重新定義了對象獲取屬性值(get)和設置屬性值(set)的操作來實現的。
雙向數據綁定, 數據層和視圖層中的數據同步, 在寫入數據時視圖層實時的跟着更新
1. 數據變化會同步更新視圖 (熱更新),我們使用Vue的數據雙向綁定一般是操縱data來更新view
2. 視圖變化也可以更新數據,通過事件監聽實現
3. 不用再去操作DOM對象,更多精力投入到業務邏輯上
Vue.js優點:
1. 體積小:壓縮后33K
2. 更要的運行效率:基於虛擬DOM
(DOM操作屬於預處理操作,預先通過JavaScript進行計算,把最終的DOM操作計算出來並優化的技術)
3. 雙向數據綁定:不用再去操作DOM對象,更多精力投入到業務邏輯上
4. 生態豐富、學習成本低:
市場上有大量成熟、穩定的基於vue.js的UI框架和常用組件(例如element UI),實現快讀開發
5. 對初學者友好,入門容易、學習資料多