技巧(赞美面试官研究的比较深)

1、渲染机制

什么是DOCTYPE及作用?

DTD(文档类型定义)是一系列的语法规则,用于定义文件类型。浏览器会根据它来判断文档类型,决定使用何种协议来解析以及切换浏览器模式;

DOCTYPE用来声明文档类型和DTD规范用于文件的合法性验证,如果不合法解析就会报错

html5:<!DOCTYPE html> html4.01分严格和宽松模式

浏览器的渲染过程?

1)解析html,解析css

2)将html,css整合在一起

3)生成renderTreee

4)渲染

重排Reflow?

DOM结构中各个元素都有自己的盒子,这些都需要浏览器根据各种样式来计算结果将元素放到它出现的位置,这个过程称之为reflow。

触发Reflow:DOM节点发生变化,css样式修改,窗口发生改变,修改字体等

重绘Repaint?

将DOM的按照计算的属性,特性呈现再页面上(可以将要操作的节点放在一个虚拟节点,一次append避免多次Repaint)

2、js运行机制

如何理解单线程?

在同一时间,只能做一件事

什么是任务队列?

同步任务和异步任务,同步任务会优先执行,异步任务会放到队列里,等同步任务执行完才执行

异步任务:setTimeout、setInterval、DOM事件、promise

什么是Event Loop?

1、运行栈

2、异步队列

3、将运行栈的任务执行完,然后去将队列里的任务放入运行栈中执行,执行完了。如此循环至队列为空

3、页面性能

1、资源压缩合并,减少http请求

2、非核心代码异步加载

1)动态加载脚本

2)async

3)defer

4)按需加载

3、浏览器缓存

缓存的分类:

1)强缓存(直接拿来用)

Expires

Cache-Control

2)协商缓存(不确定可以用,要上服务器询问)

Last-modified If-Modified-Since

Etag If-None-Match

4、使用CDN

5、预解析DNS

<meta http-equiv="x-dns-prefetch-control" content="on">

4、错误监控

  前端错误的分类

    即时运行错误:代码错误

    资源加载错误

  错误的捕获方式

    即时运行错误

    try catch

    window.onerror

    资源加载错误

      object.onerror

      performance.getEntries()

      Error事件捕获

    跨域的js运行错误如何捕获?

      1)在script标签增加crossorigin属性

      2)设置js响应头Access-Control-Allow-origin:*

  上报错误的原理

    1)采用Ajax通信的方式上报

    2)通过image对象上报

面试视频知识点整理1-12(渲染机制,js运行机制,页面性能,错误监控)的更多相关文章

  1. 面试 09-02.js运行机制:异步和单线程

    09-02.js运行机制:异步和单线程 #前言 面试时,关于同步和异步,可能会问以下问题: 同步和异步的区别是什么?分别举一个同步和异步的例子 一个关于 setTimeout 的笔试题 前端使用异步的 ...

  2. 从浏览器多进程到JS单线程,JS运行机制的一次系统梳理

    前言 见解有限,如有描述不当之处,请帮忙及时指出,如有错误,会及时修正. ----------超长文+多图预警,需要花费不少时间.---------- 如果看完本文后,还对进程线程傻傻分不清,不清楚浏 ...

  3. 从浏览器多进程到JS单线程,JS运行机制最全面的一次梳理

    前言 来源:https://dailc.github.io/2018/01/21/js_singlethread_eventloop.html 见解有限,如有描述不当之处,请帮忙及时指出,如有错误,会 ...

  4. 如何通过setTimeout理解JS运行机制详解

    setTimeout()函数:用来指定某个函数或某段代码在多少毫秒之后执行.它返回一个整数,表示定时器timer的编号,可以用来取消该定时器. 例子 ? 1 2 3 4 5 console.log(1 ...

  5. Js 运行机制 event loop

    Js - 运行机制 (Even Loop) Javascript 的单线程 - 引用思否的说法: JavaScript的一个语言特性(也是这门语言的核心)就是单线程.什么是单线程呢?简单地说就是同一时 ...

  6. 浅谈java编译机制和运行机制

    源文件和字节码的组成方式 源文件: 拓展名后跟java的文件即java的源文件. Java 源码编译由以下三个过程组成: 1.分析和输入到符号表 2.注解处理 3.语义分析和生成class文件 流程图 ...

  7. js 运行机制

    <script> console.log(1) setTimeout(function(){ console.log(3) },0) console.log(2) </script& ...

  8. Js 运行机制 (重点!!)

    一.引子 本文介绍JavaScript运行机制,这一部分比较抽象,我们先从一道面试题入手: 这一题看似很简单,但如果你不了解JavaScript运行机制,很容易就答错了.题目的答案是依次输出1 2 3 ...

  9. js 运行机制简单了解

    一.如何理解 JS 的单线程? JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事.那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊. JavaScrip ...

  10. 【Android 面试基础知识点整理】

    针对Android面试中常见的一些知识点整理,Max 仅仅是个搬运工.感谢本文中引用文章的各位作者,给大家分享了这么多优秀文章.对于当中的解析,是原作者个人见解,有错误和不准确的地方,也请大家积极指正 ...

随机推荐

  1. Docker - Can't resolve instance hostname.

    Docker容器无法解析主实例主机名 在为redis集群搭建哨兵的时候遇到这个异常 解决方案:在配置文件中添加: ALLOW_EMPTY_PASSWORD=yes 参考文档:linux - redis ...

  2. window.location.href 用法总结

    想做好前端,这几种用法一定要了解: 在做网页前端的时候会经常用到JavaScript其中window.location.href用得非常多: 其中最常用的有windows.location.href= ...

  3. App自动化中 - 三大元素定位工具

    文章转自:https://blog.csdn.net/lkm564513278/article/details/105511411 在日常android app自动化测试工作当中,使用一种工具可能难以 ...

  4. Burp学院-OS命令注入

    1.OS command injection, simple case. 最简单的命令执行,[|] 两个只要有一个为True就执行 2.Blind OS command injection with ...

  5. React子组件继承父组件的props

    https://zh-hans.reactjs.org/warnings/unknown-prop.html

  6. 一种改进后的turf.idw算法

    turf 是Advanced geospatial analysis geojson data in javascript. 官网:http://turfjs.org/ 针对github 中的源码. ...

  7. element table组件列表固定列后横向滚动条的问题

    使用el-table的fixed属性固定表格列的时候滚动条被固定列覆盖部分无法拖动 可以使用下面配置来解决 .el-table__fixed { height: auto !important; // ...

  8. ASP.NET Core实现自定义中间件的三种方式

    一.什么是中间件 请求处理管道由一系列中间件组件组成.每个组件在 HttpContext 上执行操作,调用管道中的下一个中间件或终止请求. 详情请看另外一篇文章:白话管道中间件 下图是中间件的管道模型 ...

  9. 关于idea2021.1版本的左边不显示bpmn Editor的问题

    我这里是自定义主题风格出现的问题 idea左上角File→选择setting→找到Color Scheme菜单,将主题颜色改为IntelliJ Light.在重启idea就好

  10. 与IE浏览器相关的问题(一)

    使用<input class="input" type="password" /> 密码框时,会出现密码显示状态的图标, 可以使用以下代码消除, . ...