1.src与href的区别
1.src指向外部资源的位置,href指向网络位置;
2.src用于替换当前元素,href用于在当前文档和引用资源之间确立联系。
2.简单说一下vue生命周期。
分为8个阶段:1.创建前/后,2.载入前/后,3.更新前/后,4.销毁前/后
3.请说出vue.cli项目中src目录每个文件夹和文件的用法?
assets文件夹是放静态资源;components是放组件;router是定义路由相关的配置;view视图;app.vue是一个应用主组件;main.js是入口文件。
4.angular,vue,react三大框架的区别;
1.vue,和angular可以双向数据绑定,react单向;
2.vue,react是MVVM模式,angular是MVC模式;
3.vue,react是动态路由,angular是静态路由;
5.vue路由的实现原理的理解。
前端路由的实现最先是为了实现单页应用,目的是改变URL时页面不会刷新。
1.14年之前使用hash方法,给URL加了#就不会向服务器发送请求,页面也不会刷新。
2.14年之后使用了history方法,因为HTML5标准的发布,多了2个API,pushState 和 replaceState,通过这两个 API可以改变地址且不会发送请求。
6.浅谈布局视口、视觉视口和理想视口的理解。
1.布局视口:在不设置网页的viewport的情况下,pc端的网页默认会以布局视口为基准,在移动端进行展示。
2.视觉视口:指在浏览器中通过缩放看到的页面内容,它不会影响布局视口的宽高。
3.理想视口:最佳的布局视口,在移动端下指设备的分辨率。
7.vue的浅拷贝和深拷贝区别。
1.浅拷贝:a复制了b,修改了b,a也发生了变化。
2.深拷贝:a复制了b,修改了b,a没发生变化。
8.实现深拷贝的方法。
1.借用JSON对象的parse和stringify;
2.递归;
3.$.extend( [deep ], target, object1 [, objectN ] );
9.let和var区别。
1.var定义的变量是全局变量或者函数变量。
2.let定义的变量是块级的变量。
10.伪数组定义,怎么转换成真数组。
1.定义:伪数组是对象;有length属性,值为number类型且不为0,按照下标存储数据;
2.转换:Array.prototype.slice.call( 数据 ) ;
11.判断真数组的方法。
1.数据 instanceof Array;
2.Object.prototype.toString.call( 数据 ) === '[object Array]';
12.构造函数,原型对象,实例关系。
1.实例可以通过内部指针访问到原型对象,原型对象可以通过constructor找到构造函数;