vue面试问题总结(1)

1. Vue的最大优势是什么?

Vue 作为一款轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟 DOM、运行速度快,并且作者是中国人尤雨溪,对应的 API 文档对国内开发者优化,作为前端开 发人员的首选入门框架
Vue 的优势
1、Vue.js 可以进行组件化开发,使代码编写量大大减少,读者更加易于理解。
2、Vue.js 最突出的优势在于可以对数据进行双向绑定
3、使用 Vue.js 编写出来的界面效果本身就是响应式的,这使网页在各种设备上都能 显示出非常好看的效果。
4、相比传统的页面通过超链接实现页面的切换和跳转,Vue 使用路由不会刷新页面
5、vue 是单页面应用,使页面局部刷新,不用每次跳转页面都要请求所有数据和 dom, 这样大大加快了访问速度和提升用户体验。
6、而且他的第三方 UI 组件库使用起来节省很多开发时间,从而提升开发效率

2. Vue和jQuery区别是什么?

jQuery 介绍:
jQuery 曾经也是现在依然最流行的 web 前端 js 库,可是现在无论是国内还是国外他的使用 率正在渐渐被其他的 js 库所代替,随着浏览器厂商对 HTML5 规范统一遵循以及 ECMA6 在浏览器 端的实现,jQuery 的使用率将会越来越低
vue 介绍:
vue 是一个兴起的前端 js 库,是一个精简的 MVVM。从技术角度讲,Vue.js 专注于 MVVM 模 型的 ViewModel 层。它通过双向数据绑定把 View 层和 Model 层连接了起来,通过对数据的 操作就可以完成对页面视图的渲染。当然还有很多其他的 mvmm 框架如 Angular,react 都是大同 小异,本质上都是基于 MVVM 的理念,然而 vue 以他独特的优势简单,快速,组合,紧凑,强 大而迅速崛起
vue 和 jQuery 区别:
1) vue 和 jQuery 对比 jQuery 是使用选择器()选取 DOM 对象,对其进行赋值、取值、 事件绑定等操作,其实和原生的 HTML 的区
别只在于可以更方便的选取和操作 DOM 对象,而数据和界面是在一起的
**2)**比如需要获取 label 标签的内容:选取 DOM 对象,对其进行赋值、取值、事件绑 定等操作,其实和原生的 HTML 的区别只在于可以更方便的选取和操作 DOM 对象,而数据和界 面是在一起的
**3)**比如需要获取 label 标签的内容:(“lable”).val();,它还是依赖 DOM 元素的值。 Vue 则是通过 Vue 对象将数据和 View 完全分离开来了.
4) 对数据进行操作不再需要引用相应的 DOM 对象,可以说数据和 View 是分离的, 他们通过 Vue 对象这个 vm 实现相互的绑定,这就是传说中的 MVVM

3. MVVM和MVC区别是什么?

基本定义
1.1)MVVM 基本定义
MVVM 即 Model-View-ViewModel 的简写,即模型-视图-视图模型,模型(Model)指 的是后端传递的数据,视图(View)指的是所看到的页面,视图模型(ViewModel)是 mvvm 模式的核 心,它是连接 view 和 model 的桥梁。
它有两个方向:
1.1.1)一是将模型(Model)转化成视图(View),即将后端传递的数据转化成所看到的 页面,实现的方式是:数据绑定,
1.1.2)二是将视图(View)转化成模型(Model),即将所看到的页面转化成后端的数据。 实现的方式是:DOM 事件监听,这两个方向都实现的,我们称之为数据的双向绑定
1.2)MVC 基本定义
MVC 是 Model-View- Controller 的简写。即模型-视图-控制器。M 和 V 指的意思和 MVVM 中的 M 和 V 意思一样。C 即 Controller 指的是页面业务逻辑,使用 MVC 的目的就是将 M 和 V 的代码分离。MVC 是单向通信。也就是 View 跟 Model,必须通过 Controller 来承上启下 .

使用场景
主要就是 MVC 中 Controller 演变成 MVVM 中的 viewModel,MVVM 主要解决了 MVC 中 大量的 DOM 操作使页面渲染性能降低,加载速度变慢,影响用户体验,vue 数据驱动,通过数 据来显示视图层而不是节点操作, 场景:数据操作比较多的场景,需要大量操作 DOM 元素时, 采用 MVVM 的开发方式,会更加便捷,让开发者更多的精力放在数据的变化上,解放繁琐的操 作 DOM 元素

两者之间的区别
MVC 和 MVVM 其实区别并不大,都是一种设计思想,MVC 和 MVVM 的区别并不是 VM 完全取代了 C,只是在 MVC 的基础上增加了一层 VM,只不过是弱化了 C 的概念,ViewModel 存在目的在于抽离 Controller 中展示的业务逻辑,而不是替代 Controller,其它视图操作业务等还 是应该放在 Controller 中实现,也就是说 MVVM 实现的是业务逻辑组件的重用,使开发更高效, 结构更清晰,增加代码的复用性

4. Vue常用修饰符有哪些?

.prevent: 提交事件不再重载页面,阻止默认行为;

.stop: 阻止单击事件冒泡;

.once: 只执行一次这个事件

5. Vue2.x兼容IE哪个版本以上?

不支持ie8及以下,部分兼容ie9 ,完全兼容10以上, 因为Vue的响应式原理是基于es5的Object.defineProperty(),而这个方法不支持ie8及以下。

6. 对Vue渐进式的理解

渐进式代表的含义是:主张最少, 自底向上, 增量开发, 组件集合, 便于复用

7. v-show和v-if的区别

​ v-show和v-if的区别? 分别说明其使用场景?

​ v-show 和v-if都是true的时候显示,false的时候隐藏

​ 但是:false的情况下,

​ v-show是采用的display:none

​ v-if采用惰性加载

​ 如果需要频繁切换显示隐藏需要使用v-show

8. 说出至少4个Vue指令及作用

​ v-for 根据数组的个数, 循环数组元素的同时还生成所在的标签

​ v-show 显示内容

​ v-if 显示与隐藏

​ v-else 必须和v-if连用 不能单独使用 否则报错

​ v-bind 动态绑定 作用: 及时对页面的数据进行更改, 可以简写成:分号

​ v-on 给标签绑定函数,可以缩写为@,例如绑定一个点击函数 函数必须写在methods里面

​ v-text 解析文本

​ v-html 解析html标签

9. 为什么避免v-for和v-if在一起使用

​ Vue 处理指令时,v-for 比 v-if 具有更高的优先级, 虽然用起来也没报错好使, 但是性能不高, 如果你有5个元素被v-for循环, v-if也会分别执行5次.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值