针对于现在竞争日益激烈的前端市场,小猿圈为了帮助各位朋友们能顺利的通过面试,找到理想的工作,特地整理了2019年出现频率比较大的面试题,希望可以帮助到大家。
一、谈谈你对MVVM开发模式的理解
MVVM分为Model、View、ViewModel三者。
Model
代表数据模型,数据和业务逻辑都在Model层中定义;
View
代表UI视图,负责数据的展示;
ViewModel
负责监听 Model 中数据的改变并且控制视图的更新,处理用户交互操作;
Model
和 View 并无直接关联,而是通过 ViewModel 来进行联系的,Model 和 ViewModel 之间有着双向数据绑定的联系。因此当 Model 中的数据改变时会触发 View 层的刷新,View 中由于用户交互操作而改变的数据也会在 Model 中同步。这种模式实现了 Model 和 View 的数据自动同步,因此开发者只需要专注对数据的维护操作即可,而不需要自己操作 dom。
二. Vue 有哪些指令?
v-html、v-show、v-if、v-for等等
三. v-if 和 v-show 有什么区别?
v-show 仅仅控制元素的显示方式,将 display 属性在 block 和 none 来回切换;而v-if会控制这个 DOM 节点的存在与否。当我们需要经常切换某个元素的显示/隐藏时,使用v-show会更加节省性能上的开销;当只需要一次显示或隐藏时,使用v-if更加合理。
四. 网页从输入网址到渲染完成经历了哪些过程?
大致可以分为如下7步:
1、输入网址;
2、发送到DNS服务器,并获取域名对应的web服务器对应的ip地址;
3、与web服务器建立TCP连接;
4、浏览器向web服务器发送http请求;
5、web服务器响应请求,并返回指定url的数据(或错误信息,或重定向的新的url地址);
6、浏览器下载web服务器返回的数据及解析html源文件;
7、生成DOM树,解析css和js,渲染页面,直至显示完成;
好了,本次的分享就是这么多,希望大家都能招到合适的工作,同时不要忘记关注我哦。有想学习的同学欢迎到小猿圈网站去学习,从零基础到实战全部都有哦,快去学习吧,加油哦。