2019前端面试题
时间过的也蛮快,今年迎来了第一次面试前端,其实我很紧张,第一次面试,下面是面试题,希望对今年找工作的你有所帮助。
1、空间复杂度和时间复杂度
空间复杂度:S(n)=O(f(n))
时间复杂度:1,log2n,n,n^2,n^3,logn^2
2、HTTP协议的状态码及其表达的意思:
状态码:
1xx:提示信息,请求接收
2xx:请求成功
3xx:重定向
4xx:客户端错误
5xx:服务器端错误
各个状态码代表的意思:
200:请求成功
204:请求受理,但没有资源返回
206:请求资源的一部分
301:永久重定向
302:临时重定向
303:和302像,只是在客户端请求一个URL,通过get的方法重定向到另一个URL上
304:发送附带条件请求,与重定向无关
307:临时重定向,需要强制使用post方法(可以与302,303区分,毕竟我遇到了)
400:报文有误
401:需要认证
402:需要付费
403:禁止
404:服务器错误
500:服务器内部错误
503:服务器正忙
3、HTTPS为什么是HTTP的加强版?
HTTPS是HTTP加上了SSL加密处理的。
5、HTTP和TCP的关系?
HTTP是基于TCP
6、HTTP和PUT的关系?
PUT是HTTP的方法之一
7、补充HTTP的方法
get:请求URL,通过get返回到服务器
post:请求URL,通过post返回到服务器(推荐)
PUT:传输文件
HEAD:获取报文首部
DELETE:删除文件
OPTLONS:查询
8、HTML5你用过哪些新特性?
center,img,button,input,footer等
9、css中的空格和逗号的区别
空格代表同级class,逗号代表前面是后面的父亲
10、css选择器的优先级
!import > 内联样式 > id选择器 > (类选择器、属性选择器、伪类选择器) > (元素选择器、伪元素选择器)
注意:通配符(*)、关系符(+、>、~、‘’、||)和否定伪类(not())对于优先级是没有影响的
11、什么是DOM树?
把整个文档看成一棵树,树的分支点就是节点,同时定义很多方法来操作这些节点
12、DOM树的组成部分
文档
文档对象
文档对象模型
13、DOM树的三种常见节点
文档节点
元素节点
属性节点
14、什么是事件冒泡
当事件发生后,这个事件开始传播(由内向外或由外向内)
15、什么是js闭包
是可以访问其他函数内部变量的函数
16、js的基本类型有几个?分别是哪几个?哪个是ES6新增?
有7个基本类型,number、string、null、undefined、onject、boolean、symbol
symbol是由ES6新增
17、js如何创建cookie?
document.cookie
18、js如何销毁cookie?
del-cookie("task-old")
19、简述一下你对vue的认识
是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库 只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库 结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。
20、Vue框架为什么让网页拥有更高的运行效率?
Vue当中没有真正操作dom节点,而是进行的虚拟dom的操作。
vue是一套用于构建用户界面的渐进式框架。
21、position的几个值?
absolute:绝对定位,相对于static定位以外,第一个父元素定位
relative:相对定位,相对于正常位置定位
fixed:绝对定位,相对于浏览器窗口定位
inherit:从父元素继承
sticky:粘性定位,基于用户滚动定位
22、absolute和fixed的区别
同为绝对定位的他们,absolute是相对于static定位外的第一个父元素定位而fixed是相对于浏览器定位。
23、浏览器有哪些存储数据的方法?其特点是什么?
cookie存储数据
在客户端存储会话信息,记录用户状态,当页面关闭后数据也不会丢失
userData存储数据
只适用于IE,当页面关闭或者刷新数据也不会丢失
web存储数据
无需在客户端和服务器端来回传输数据,并且存储大量跨会话数据