Vue前端面试题总结(二十六)双向数据绑定的原理 详解

Vue双向数据绑定的原理

1.Vue双向数据绑定是通过 数据劫持 结合 发布订阅者 的方式来实现的 也就是说数据和视图一起更新 数据发生变化 视图也发生变化 视图发生变化 数据也发生变化
2.关于双向数据绑定 其核心是object.defineProperty()方法

双向绑定的核心object.defineProperty()是什么

  • 采用数据劫持结合发布者-订阅者模式的方式
    - Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调

(1)Object.defineProperty(obj, prop, descriptor) ,这个语法内有三个参数,分别为 obj (要定义其上属性的对象) prop (要定义或修改的属性) descriptor (具体的改变方法)
(2)简单地说,就是用这个方法来定义一个值。当调用时我们使用了它里面的get方法,当我们给这个属性赋值时,又用到了它里面的set方法;

猜你喜欢

转载自blog.csdn.net/Rick_and_mode/article/details/108650653