欢迎光临散文网 会员登陆 & 注册

千锋教育web前端高频面试题视频教程,kerwin大话前端面试秘籍(附答案...

2023-07-16 21:22 作者:失所归期  | 我要投稿

1.解释单向数据流和双向数据绑定

在 vue中 ,单向数据流使用一个上传和下传两个数据流之间相互独立,单向数据流指只能从一个方向来修改状态。

而双向数据绑定总的来说就是两条线,模型到视图,视图到模型



2.Object. defineProperty 有什么缺点

1、无法监听es6的 Set 、 Map 变化;

2、无法监听 Class 类型的数据;

3、属性的新加或者删除也无法监听;

4、数组元素的增加和删除也无法监听。


3.对 MVC , MVP , MVVM 的理解

MVC

View 视图操作后,处理的权利交移给 Controller控制台进行预处理,然后由 Model 执行相关的业务逻辑;当 Model 变更后, View 通过观察者模式收变更消息,会向 Model 请求最新的数据,然后重新更新界面。View 无法组件化,无法复用


MVP

和 MVC 模式一样,可以复用

View 可以进行组件化,但维护困难,无法实现响应式


MVVM

 双向数据绑定,视图到模型,模型到视图



4、生命周期


三个阶段

初始阶段和更新阶段、销毁阶段

常用:

初始化阶段(初次渲染阶段):beforeCreated、created、beforeMount、mounted


更新阶段(再次渲染阶段):beforeUpdate、updated


销毁阶段:beforeDestory、destoryed



5.Vue 响应式数据原理 Proxy 与 Object . defineProperty 优劣对比

响应式原理:

 defineProperty和setter getter进行拦截,一旦数据发生改变,setter方法开始调用watcher,watcher再调用render函数生成虚拟dome,虚拟dome对比老虚拟dome,发现区别就以最小代价更新dome节点,实现页面的更新操作


 proxy 优势如下:

 Proxy 可以直接监听对象而非属性。可以直接监听数组的变化

 Proxy 返回的是一个新对象,我们可以只操作新的对象达到目的

而 Object. defineProperty 只能遍历对象属性直接修改:

// Object . defineProperty 的优势如下:

兼容性好,支持IE9,雨 Proxy 的存在浏览墨兼容性问题


6.Composition API 的出现带来哪些新的开发体验,为啥需要这个?

1:在 Compostion API 中时根据逻辑相关组织代码的,提高可读性和可维护性,类似于 react 的 hook 写法。2:更好的重用逻辑代码,在 Options API 中通过 MIxins 重用逻辑代码,容易发生命名冲突且关系不清。

3:解决在生命周期函数经常包含不相关的逻辑,但又不得不把相关逻辑分离到了几个不同方法中的问题,如在 mounted 中设置定时器,但需要在 destroyed 中来清除定时器,将同一功能的代码拆分到不同的位置,造成后期代码维护的困难。


7.对比 jQuery , Vue 有什么不同

 jQuery 专注视图层,通过直接操作 DOM 去实现页面的一些逻辑渲染; Vue 专注于数据层,通过数据的双向绑定,最终表现在 DOM 层面。减少了 DOM 操作。 Vue 使用了组件化思想,使得项目子集职责清晰,提高了开发效率,方便重复利用,便协同开发

35


8.如何再 Vue 的单文件组件里的样式定义全局 CSS ?

在sty1e标签上不加上 scoped 的属性,默认为全局 css 样式


9.说一下 Sroot ,$ parent , Srefs 

$ root ,和$ parent 都能访问父组件的属性和方法,区别在于如果存在多级子组件,通过 parent 访问得到的是它最近一级的父组件,通过 root 访问得到的是根父组件。通过在子组件标签定义 ref 属性,在父组件中可以使用 Srefs 访问子组件实例。


10.Vue中怎么自定义指令

通过 directive 来自定义指令,自定义指令分为全局指令和局部指令,自定义指令也有几个的钩子函数,常用的有 bind 和 update ,当 bind 和 update 时触发相同行为,而不关心其它的钩子时可以简写。

千锋教育web前端高频面试题视频教程,kerwin大话前端面试秘籍(附答案...的评论 (共 条)

分享到微博请遵守国家法律