37.==和===区别
== 两个等号判断的是值是否相等 不判断类型
===严格等于:会判断类型是否相同
38.循环
while(){} 小括号仅一条语句写循环的条件(如何循环),大括号写循环体的代码(循环要做什么)
do{}while() 循环先执行循环体的代码,再判断循环条件
39.原型和原型链
1.原型
(1)所有的构造函数都自带了一个prototype属性(显性),该属性指向当前构造函数的原型
(2)原型可以通过自带的constructor(隐性),指向当前原型的构造函数
(3)构造函数可以通过new进行实例化 产生实例化对象
(4)实例化对象可以通过_proto_属性 指向当前构造函数的原型 在上面查找想要的属性或方法
2.原型链
(1)当访问一个对象的属性或方法时,先在当前对象自身查找,如果没有,
(2)通过_proto_方法去当前对象的原型上查找,如果,还是没有,去对象(Object.prototype)的原型上查找,
(3)找不到返回undefined,原型链的终点是null。这条由_proto_串起的链就是原型链;
40.Vue2和Vue3区别
Vue2 是选项式,底层响应式采用Object.defineProperty;
Vue3 支持 选项式 和 组合式,底层响应式采用 Proxy。”
Vue 2 遍历对象里的每一个属性,给每个属性都加上 getter 和 setter,读取时依赖收集,修改时通知更新。无法直接监听数组下标的变化,新增或删除属性监听不到,得用 Vue.set 或 Vue.delete
Vue 3 直接"代理"了整个对象,相当于在对象外面加了一层"拦截器",增、删、改能自动监听,数组操作完全支持
Vue2和Vue3 的生命周期不同。
41.Vue2和Vue3生命周期函数
1.Vue 2 选项式 API 常用8个:
创建:beforeCreate created
挂载:beforeMount mounted
更新:beforeUpdate updated
销毁:beforeDestroy destroyed
不常用的
activated激活时<keep-alive>
deactivated停用时 <keep-alive>
2.Vue 3 组合式 API 常用7个。
创建:setup
挂载:onBeforeMountonMounted
更新:onBeforeUpdateonUpdated
卸载:onBeforeUnmount onUnmounted
42.传参
1.直接传参(不用接口传类型)
2.传类型再传参数
3.传默认值 (也要传类型)