常见前端面试题(二)

更多内容关注微信公众号“前端阿章”~

一、var、let和const的区别是什么?

1.var可以跨块级作用域访问,let、const不行。
2.var存在变量提升,let、const不存在,即不能在声明之前使用let和const声明的变量,let和const存在暂时性死区。
3.使用var声明的变量是window对象中的一个属性,即可以通过window.变量进行访问,let、const不行。
4.let、const不允许变量重复声明。
5.const在声明变量时必须赋初始值。
6.var、let声明的变量可以重新赋值,const不行。

拓展:

1.const不能重新赋值指的是基础数据类型。
2.现在一般用let声明变量,涉及到常数或不需要改变的变量可用const声明。一般很少用var。

二、currentTarget和target的区别是什么?

1.currentTarget 为 事件绑定的元素。
2.target 为 触发事件的元素。

三、session和cookie的区别是什么?

1.session存放在服务器,cookie存放在客户端。
2.session安全性较高。
3.session大小无限制,但由于存放在服务器,session设置不宜过大,单个cookie不超过4k,最多不超过20个。
4.session是会话级别,会话结束即清除。cookie可以设置过期时间。
5.session可以存放任意数据类型,cookie只能存放字符串。

四、get请求和post请求的区别?

1.GET在浏览器回退时是无害的,而POST会再次请求。
2.GET产生的URL地址可以被Bookmark,而POST不可以。
3.GET请求会被浏览器主动cache,而POST不会,除非手动设置。
4.GET请求只能进行url编码,而POST有多种编码方式。
5.GET请求参数会被完整地保留在浏览器历史记录里,而POST不会。
6.GET请求在URL中传送的参数有长度限制。
7.GET请求只接收ASCII字符的参数数据类型,POST没有限制。
8.GET的安全性比较低,因为GET请求的参数暴露在URL上。POST的请求参数放在request body中。

五、常见状态码

100 服务器已收到请求的第一部分,要求请求者继续发送请求。
200 服务器已成功处理请求。
301 永久重定向,服务器返回此响应时会自动跳转到新位置。
302 临时重定向,服务器返回此响应时会临时跳转到新位置,但以后的请求继续使用原地址。
400 错误请求。
401 鉴权不通过。
403 服务器拒绝该请求。
404 服务器找不到请求的资源。
500 服务器内部错误。

更多内容关注微信公众号“前端阿章”~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。