一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第1天,
最近空闲研究了一下vue2的双向绑定,vue3的暂时没有去了解
vue2的双向绑定原理是通过数据劫持结合着发布者--订阅者模式的方式来实现的,我们可以先来看一下通过控制台输出一个定义在vue初始化数据上的对象是个什么东西。
这里利用到的是
Object.defineProperty()
这个方法
Object.defineProperty( )是用来做什么的?它可以来控制一个对象属性的一些特有操作,比如读写权、是否可以枚举
它会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象。
get和set的使用方法:
-
get和set是方法,因为是方法,所以可以进行判断
-
get一般是要返回的;而set是设置,不用返回
-
如果调用对象内部的属性约定的命名方式是变量名前加_
即get是对象的属性值返回的方法,set是属性值修改的方法
查找文档中的一个特定的元素,最有效的方法是 getElementById()。
在操作文档的一个特定的元素时,最好给该元素一个 id 属性,为它指定一个(在文档中)唯一的名称,然后就可以用该 ID 查找想要的元素。
事件捕获,从dom结构上到下,window.addEventListener先于document.addEventListener被捕获
事件冒泡,从dom结构底层向上传递,document.addEventListener先于window.addEventListener被触发
在addEventListener第三个参数处可指定事件是否在捕获或冒泡阶段执行。
\