1.get和post的区别
- 表单的method属性设置post时发送的是post请求,其余都是get请求
- get请求通过url地址发送请求参数,参数可以直接在地址栏中显示,安全性较差;post是通过请求体发送请求参数,参数不能直接显示,相对安全
- get请求URL地址有长度限制,根据浏览器的不同,限制字节长度不同,post请求没有长度限制
2.http和https的区别
- https协议需要到CA申请证书,一般免费证书较少,因而需要一定费用。
- http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl/tls加密传输协议。
- http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
- http的连接很简单,是无状态的;HTTPS协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
3.说说vue-router懒加载的作用
-
vue-router懒加载也叫延迟加载,即在需要的时候进行加载,随用随载。
-
解决了进入首页不用一次加载过多资源造成用时过长的问题
const lazy = () => import('@/components/lazy')
4.说说es6的新特性
- 新增了let和const
- 模板字符串
- 箭头函数
- 函数的参数默认值
- Spread/Rest操作符号 ...
- 数组和对象解构
- for..in 和for...of
- 二进制和八进制字面量
- 新增 类
5.谈谈js的防抖和节流
- 防抖:当持续触发事件时,一定时间段内没有再触发事件,事件处理函数才会执行一次,如果设定时间到来之前,又触发了事件,就重新开始延时。也就是说当一个用户一直触发这个函数,且每次触发函数的间隔小于既定时间,那么防抖的情况下只会执行一次。
- 节流:当持续触发事件时,保证在一定时间内只调用一次事件处理函数,意思就是说,假设一个用户一直触发这个函数,且每次触发小于既定值,函数节流会每隔这个时间调用一次
用一句话总结防抖和节流的区别:防抖是将多次执行变为最后一次执行,节流是将多次执行变为每隔一段时间执行
6.谈谈css3的新特性
7.谈谈vue通信有哪些
- 父组件到子组件Props,子组件到父组件事件回调,$emit, @handleEvent
- 非父子使用bus (同级组件)
- v-modle
- vuex
8.vuex是什么,它的原理是什么?
- vuex是一个集中式的状态管理工具。
- 创建一个Store对象,对状态进行集中管理。通过commit:mutations来修改状态。dispatch:action 来组合业务逻辑,实现异步调用。
9.常见的兼容性问题?
-
不同浏览器的标签默认的margin和padding不一样。
*{margin:0;padding:0;}
-
IE6双边距bug:块属性标签float后,又有横行的margin情况下,在IE6显示margin比设置的大。hack:display:inline;将其转化为行内属性。
-
渐进识别的方式,从总体中逐渐排除局部。首先,巧妙的使用“9”这一标记,将IE浏览器从所有情况中分离出来。接着,再次使用“+”将IE8和IE7、IE6分离开来,这样IE8已经独立识别。
{ background-color:#f1ee18;/*所有识别*/ .background-color:#00deff\9; /*IE6、7、8识别*/ +background-color:#a200ff;/*IE6、7识别*/ _background-color:#1e0bd1;/*IE6识别*/ }
-
设置较小高度标签(一般小于10px),在IE6,IE7中高度超出自己设置高度。hack:给超出高度的标签设置overflow:hidden;或者设置行高line-height 小于你设置的高度。
-
IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性;Firefox下,只能使用getAttribute()获取自定义属性。解决方法:统一通过getAttribute()获取自定义属性。
-
Chrome 中文界面下默认会将小于 12px 的文本强制按照 12px 显示,可通过加入 CSS 属性 -webkit-text-size-adjust: none; 解决。
-
超链接访问过后hover样式就不出现了,被点击访问过的超链接样式不再具有hover和active了。解决方法是改变CSS属性的排列顺序:L-V-H-A ( love hate ): a:link {} a:visited {} a:hover {} a:active {}
10.ES6中新增的Set、Map两种数据结构怎么理解
-
Map以[键,值]的方式储存元素,Set以[键,键]的方式储存元素。
-
Set是ES6中新增的数据结构,类似于数组,但是成员的值都是唯一的,没有重复的值,一般称之为集合。常用方法有add,delete,clear,has。
-
Map类型是键值对的有序列表,而键和值都可以是任意类型。Map有个size属性返回成员总数,常用方法有set,get,has,delete,clear。