【面试】浏览器相关知识点与高频考题解析

知识点梳理:浏览器加载页面和渲染过程,性能优化,Web安全。

浏览器从加载页面到渲染页面的过程。可以将加载过程和渲染过程分开说。回答问题的时候,关键要抓住核心的要点,把要点说全面,稍加解析即可,简明扼要不拖沓。

加载过程:浏览器根据DNS服务器得到域名的IP地址→向这个IP的机器发送HTTP请求→服务器收到、处理并返回HTTP请求→浏览器得到返回内容。

渲染过程:根据HTML结构生成DOM树→根据CSS生成CSSOM→将DOM和CSSOM整合形成RenderTree→根据RenderTree开始渲染和展示→遇到<script>时会执行并阻塞渲染。

总结前端性能优化的解决方案。性能优化的原则是以更好的用户体验为标准,具体就是实现两个目标:1、多使用内存、缓存或者其他方法;2、减少CPU和GPU计算,更快展现。

优化的方向有两个。一个是减少页面体积,提升网络加载:静态资源的压缩合并(JS 代码压缩合并、CSS 代码压缩合并、雪碧图)、静态资源缓存(资源名称加 MD5 戳)、使用 CDN 让资源加载更快。

另一个是优化页面渲染:CSS 放前面,JS 放后面、懒加载(图片懒加载、下拉加载更多)、减少DOM 查询,对 DOM 查询做缓存、减少DOM 操作,多个操作尽量合并在一起执行(DocumentFragment)、事件节流、尽早执行操作(DOMContentLoaded)、使用 SSR 后端渲染,数据直接输出到 HTML 中,减少浏览器使用 JS 模板渲染页面 HTML 的时间。

前端常见的安全问题有哪些?XSS攻击、CSRF攻击。


内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:/ganhuo/82.html