Vue最常见的面试题、考点及答案

写在前面

CSDN话题挑战赛第1期

  • 活动详情地址:https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f

  • 参赛话题:前端面试宝典

  • 话题描述:欢迎各位加入话题创作得小伙伴,如果我没有猜错得话,我觉得你是应该同我一样是一位前端人。如今前端在IT事业中的占比越来越重,已经成为不可缺少的部分,前端技术也是层出不穷,各种技术类、技术框架也蜂拥而出,前端面试的难度也随之增加,如果我们拥有一套前端面试宝典。如果你是应聘者:你就可以从容的solo面试官,如果你是面试官:你就可以将应聘者拷问到骨子里!
    总之我们大家一起将自己的面试经验以及学习到的知识点汇聚于此,形成一套体系的前端面试宝典。让读者无论是面试还是学习都能够有非常大的收获。就让我们携手共筑前端面试宝典吧!!!

  • 创作模板:

题目一

谈谈你对Vue的理解

考点

  • vue的核心理念
  • Vue核心特性
  • Vue跟传统开发的区别
  • Vue的优缺点

答案

  • 它是一个渐进式JavaScript框架
  • 核心库加插件
  • 动态创建用户界面
  • 使用MVVM模式
  • 代码简洁 体积小 能够提高运行效率
  • 适合PC端和移动端的开发
  • 可以轻松引入vue插件以及其他第三方库进行开发

题目二

SPA是什么

考点

  • SPA—单页面应用
  • SPA的实现
  • SPA的优缺点
  • SPA的功能

答案

  • 单页面应用 single page applicable
  • 页面只加载一次其他内容通过改变页面内容实现,
  • 使用路由器实现 根据用户操作 改变用户界面而不需要刷新页面的功能
  • 控制整个应用视图状态的控制器

题目三

Vue的优点

考点

  • Vue的优点

答案

  • 轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十 kb ;
  • 简单易学:国人开发,中文文档,不存在语言障碍 ,易于理解和学习;
  • 双向数据绑定:保留了 angular 的特点,在数据操作方面更为简单;
  • 组件化:保留了 react 的优点,实现了 html 的封装和重用,在构建单页面应用方面有着独特的优势;
  • 视图,数据,结构分离:使数据的更改更为简单,不需要进行逻辑代码的修改,只需要操作数据就能完成相关操作;
  • 虚拟DOM:dom 操作是非常耗费性能的, 不再使用原生的 dom 操作节点,极大解放 dom 操作,但具体操作的还是 dom 不过是换了另一种方式;
  • 运行速度更快:相比较于 react 而言,同样是操作虚拟 dom ,就性能而言, vue 存在很大的优势。

题目四

SPA首屏加载速度慢的怎么解决?

考点

  • 加载慢的原因
  • 常见的几种SPA首屏优化方式

答案

加载慢的原因

  • 网络延时问题
  • 资源文件体积是否过大
  • 资源是否重复发送请求去加载了
  • 加载脚本的时候,渲染内容堵塞了

常见的几种SPA首屏优化方式

  • 减小入口文件积
  • 静态资源本地缓存
  • UI框架按需加载
  • 图片资源的压缩
  • 组件重复打包
  • 开启GZip压缩
  • 使用SSR

题目五

Vue数据双向绑定原理

考点

  • 实现方式
  • 实现原理

答案

实现mvvm的数据双向绑定,是采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来给各个属性添加settergetter并劫持监听,在数据变动时发布消息给订阅者,触发相应的监听回调。就必须要实现以下几点:

  • 实现一个数据监听器Observer,能够对数据对象的所有属性进行监听,如有变动可拿到最新值并通知订阅者
  • 实现一个指令解析器Compile,对每个元素节点的指令进行扫描和解析,根据指令模板替换数据,以及绑定相应的更新函数
  • 实现一个Watcher,作为连接Observer和Compile的桥梁,能够订阅并收到每个属性变动的通知,执行指令绑定的相应回调函数,从而更新视图

写在最后

CSDN话题挑战赛第1期

猜你喜欢

转载自blog.csdn.net/weixin_44009656/article/details/124742528