v-model 實現的原理vue
angular 是 mvc 的實現原理,ng-model 是靠髒值檢測實現的mvc
髒值檢測:for 循環一個個對比3d
vue 靠的是數據劫持 和 發佈者,訂閱者模式對象
數據劫持:Object.defineProperty() 這個方法blog
delete 關鍵字,主要用於刪除get
生成對象方法:it
1. 字面量定義 var a = {} 或 var a = new Object()table
2. 經過 Object.defineProperty() 方法angular
案例:原理
var a = {age:20};
a.name = 'zhang' // 定義對象的屬性
a.age = 30 // 修改對象的屬性
Object.defineProperty() 給一個對象定義新屬性或者修改一個對象的屬性;
confinguable 配置選項,值爲 true,表明這個屬性可刪除
enumerable 表明可枚舉,值爲true,可使用 for in 遍歷
value 這個屬性的值
writeable 這個屬性能夠更改
注意:若是有了 get 和 set 方法,就不能有 writable 和 value 屬性