http&&浏览器篇
前言
网上的React面试题文章有非常多,但很多题都过时了。
有的文章只包含了react相关题目,但是真正面试不只考react问题,js,css,http,es6都会涉及的到。
此片文章,针对以上几点,整理了一些时下高频的react前端面试题,并且做出相应的解析。
其他篇
正文
1.cookies、sessionStorage和localStorage的区别?
背景:
(1)cookies意思是小甜点,顾名思义cookies确实很小,大小限制在4kb左右,它的主要用途是来保存登陆信息,比如你登陆时有“记住密码”选项。它就是在cookies中存入一段识别用户身份的数据来实现的。
(2)localStorage它是html5新加入的技术,它并不是划时代的技术,早在ie6时代,就有userData技术,但是当时为了兼容性,更通用的方案是使用 Flash。而如今,localStorage 已经被大多数浏览器所支持。
(3)sessionStorage,它与 localStorage 的接口类似,但保存数据的生命周期与 localStorage 不同。刷新页面数据依旧存在。但当页面关闭后,sessionStorage 中的数据就会被清空。
三者区别:
应用场景:
cookie:因为考虑到每个 HTTP 请求都会带着 Cookie 的信息,所以 Cookie 当然是能精简就精简!比较常用的一个应用场景就是判断用户是否登录。针对登录过的用户,服务器端会在他登录时往 Cookie 中加入一段加密过的唯一辨识单一用户的辨识码,下次只要读取这个值就可以判断当前用户是否登录啦。
localStorage: 接替了 Cookie 管理购物车的工作,同时也能胜任其他一些工作。比如HTML5游戏通常会产生一些本地数据。
sessionStorage:如果遇到一些内容特别多的表单,为了优化用户体验,我们可能要把表单页面拆分成多个子页面,然后按步骤引导用户填写。这时候 sessionStorage 的作用就发挥出来了。
2.你知道那些HTTP状态码?(说具有代表性的即可)
(1)200 正常
(2)204 正常但无资源
(3)206 范围请求(通过content-Range设置指定范围)
(4)301 永久重定向(请求的资源已被分配了新的 URI,以后应使用资源现在所指的 URI)
(5)302 临时重定向(请求的资源已被分配了新的 URI,希望用户(本次)能使用新的 URI 访问。 )
(6)304 协商缓存(协商缓存需要访问服务器,如果命中缓存的话,返回结果是304。)
(7)400 错误请求 (请求报文中存在语法错误。)
(8)401 未授权 (请求要求身份验证。)
(9)403 拒绝访问 (没有权限