浏览器详解(15题)
【浏览器详解】 问题:浏览器主要由哪几个核心组成部分? 答案:用户界面、浏览器引擎、渲染引擎、网络模块、JavaScript解释器、UI后端、数据存储。
【浏览器详解】 问题:主流浏览器的渲染引擎(内核)分别是什么? 答案:Chrome/Edge:Blink;Firefox:Gecko;Safari:WebKit。
【浏览器详解】 问题:浏览器从输入URL到页面展示的整个过程叫什么? 答案:页面渲染流程(或导航流程)。
【浏览器详解】 问题:浏览器是单进程还是多进程架构?以Chrome为例说明。 答案:Chrome是多进程架构,包括浏览器主进程、渲染进程、GPU进程、网络进程、插件进程等。
【浏览器详解】 问题:浏览器为什么采用多进程架构? 答案:提高稳定性、安全性和性能,一个页面崩溃不影响其他页面。
【浏览器详解】 问题:渲染进程中关键的线程有哪些? 答案:主线程(负责JS执行、样式计算、布局、绘制)、合成线程、栅格化线程、光栅化线程。
【浏览器详解】 问题:浏览器同源策略(Same-Origin Policy)是什么? 答案:协议、域名、端口相同才算同源,限制跨域资源访问以保证安全。
【浏览器详解】 问题:浏览器如何存储Cookie、LocalStorage、SessionStorage? 答案:Cookie随HTTP请求发送;LocalStorage和SessionStorage是HTML5 Web Storage,永久/会话级存储。
【浏览器详解】 问题:浏览器缓存机制主要分为哪几类? 答案:强缓存(Expires/Cache-Control)和协商缓存(Last-Modified/ETag)。
【浏览器详解】 问题:Service Worker是什么?常用于什么场景? 答案:运行在浏览器后台的脚本,可拦截网络请求,常用于离线缓存、PWA。
【浏览器详解】 问题:浏览器如何处理JavaScript的阻塞? 答案:JS默认阻塞渲染,建议使用async或defer属性异步加载。
【浏览器详解】 问题:浏览器重绘(Repaint)和回流(Reflow)的区别是什么? 答案:重绘是样式改变不影响布局,回流是布局或几何属性改变。
【浏览器详解】 问题:浏览器如何解析HTML构建DOM树? 答案:从上到下逐字节解析HTML,遇到标签构建DOM节点。
【浏览器详解】 问题:CSSOM树是如何构建的? 答案:解析CSS规则,构建CSS对象模型树。
【浏览器详解】 问题:渲染树(Render Tree)由什么组成? 答案:由DOM树和CSSOM树合并,只包含需要显示的节点。
DevTools详解(15题)
【DevTools详解】 问题:Chrome DevTools如何打开?快捷键是多少? 答案:F12、Ctrl+Shift+I(Windows)或Cmd+Option+I(Mac)。
【DevTools详解】 问题:Elements面板主要用于查看什么? 答案:查看和修改DOM结构及CSS样式。
【DevTools详解】 问题:Console面板可以执行什么操作? 答案:执行JavaScript代码、查看日志、错误信息。
【DevTools详解】 问题:Network面板的作用是什么? 答案:查看网络请求详情、加载时间、水落图(Waterfall)。
【D