前端常见面试题(十一)

目录:

1,ES5/ES6 的继承除了写法以外还有什么区别?

2,http状态码有哪些?分别是深恶意思?

3,浏览器是如何渲染页面的?

4,typeof和instanceof相同点与不同点

5,如何解决回调地狱?请手写代码

一:ES5/ES6 的继承除了写法以外还有什么区别?

1,ES5寄生组合式继承

2,ES6继承

ES6中子类继承父类的属性使用了super关键字,ES6语法实现是ES5的语法糖,表面上,ES6的类关键字和子类继承关键字 实现的结构和ES5继承一样,但是根本还是有差别的,ES5继承prototype属性是先实例化父类,直接继承;而 ES6是在实例化子类对象时继承父类的prototype,即实例化父类。

二:http状态码有哪些?分别是什么意思?

1**(信息类):表示接收到请求并且继续处理

100  Continue  继续,一般在发送post请求时,已发送了http header之后服务端将返回此信息,表示确认,之后发送具体参数信息

2**(响应成功):表示动作被成功接收、理解和接受

200  OK        正常返回信息

201  Created    请求成功并且服务器创建了新的资源

202  Accepted  服务器已接受请求,但尚未处理

3**(重定向类):为了完成指定的动作,必须接受进一步处理

301  Moved Permanently  请求的网页已永久移动到新位置。

302  Found      临时性重定向。

303  See Other  临时性重定向,且总是使用 GET 请求新的 URI。

304  Not Modified 自从上次请求后,请求的网页未修改过。

4**(客户端错误类):请求包含错误语法或不能正确执行

400  Bad Request  服务器无法理解请求的格式,客户端不应当尝试再次使用相同的内容发起请求。

401  Unauthorized 请求未授权。

403  Forbidden  禁止访问。

404  Not Found  找不到如何与 URI 相匹配的资源。

5**(服务端错误类):服务器不能正确执行一个正确的请求

500  Internal Server Error  最常见的服务器端错误。

503  Service Unavailable 服务器端暂时无法处理请求(可能是过载或维护)。

三:浏览器是如何渲染页面的?

1,简述浏览器渲染过程

1,解析HTML以构建DOM树:渲染引擎开始解析HTML文档,转换树中的html标签或js生成的标签到DOM节点,它被称为 — 内容树。

2,构建渲染树:解析CSS(包括外部CSS文件和样式元素以及js生成的样式),根据CSS选择器计算出节点的样式,创建另一个树 — 渲染树。,

3,布局渲染树: 从根节点递归调用,计算每一个元素的大小、位置等,给每个节点所应该出现在屏幕上的精确坐标。

4,绘制渲染树: 遍历渲染树,每个节点将使用,

2.CSS阻塞渲染

CSS 是阻塞渲染的资源。需要将它尽早、尽快地下载到客户端,以便缩短首次渲染的时间。

这就是为什么我们将外部样式的引入放在head标签中的原因,在body渲染前先把相对完整CSSOM Tree构建好。

3.JavaScript阻塞渲染

JavaScript 会阻止 DOM 构建和延缓网页渲染。 为了实现最佳性能,可以让您的JavaScript 异步执行,并去除关键渲染路径中任何不必要的 JavaScript。

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

推荐阅读更多精彩内容

  • 【转载】CSDN - 张林blog http://blog.csdn.net/XIAOZHUXMEN/articl...
    竿牍阅读 3,529评论 1 14
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,628评论 0 7
  • 什么是事件委托?为什么要用事件委托? 什么是事件委托? 事件委托,又称事件代理,就是将元素的事件处理交由父元素或者...
    郝晨光阅读 1,297评论 0 14
  • 那些烂糟虚靡的往事都磨成一个狗脑把酒言欢的喝下去
    李幻一阅读 270评论 0 1
  • 这是一个曾经令我崇拜的人(如图), 包括大家熟悉的罗胖 夜听的刘筱 南方都市报的咪蒙, 只读金庸的六神磊磊, 以及...
    静工皮匠阅读 246评论 1 1