本文主要记录浏览器中重要的核心点和常见面试题,可自查对浏览器相关知识的掌握程度,后面可能会补充更多重点问题。具体答案清自行百度

一、浏览器原理

1. 细说目前主流浏览器的内核和JS引擎?

2. 阐述一下各个主流内核的优缺点

3. 浏览器有哪些常驻线程?阐述一下各个线程的用处

4. 浏览器中JavaScript为什么是单线程的?与异步冲突吗?

5. 说一下输入URL到页面加载的整体过程?(PS:这里说的越深,表示对浏览器原理理解的越透)

6. 说一下浏览器中的DNS解析过程

7. 说一下浏览器中三次握手和四次挥手的工作流程

8. Chrome中同一域名下允许有几个TCP连接?

9. 说一下HTTP发送请求到接收响应的整个过程(要点:Header内容、数据流)

10. 说一下浏览器的渲染过程(越细越好)

11. 说一下浏览器的解析过程(越细越好)

12. CSS解析会阻塞哪些部分?说明原因(两个角度:link引入的CSS样式 和style中的样式)

13. JavaScript解析会阻塞哪些部分?说明原因

二、浏览器缓存

14. 为什么要缓存?简述一下缓存机制

15. 从缓存的角度说一下浏览器发送http请求到页面呈现的整个过程(最好把流程图背的滚瓜烂熟)

16. 强缓存是什么?协商缓存是什么?

17. 强缓存怎么判断缓存是否到期?

18. 强缓存常见的配合命令有哪些?

19. 协商缓存怎么判断缓存是否到期?

20. 分别阐述一下协商缓存中Last-ModifiedETag的优缺点

21. 刷新操作都有哪些?阐述刷新操作对http缓存的影响

22. 缓存位置都有哪些?细说他们的功能

23. 缓存位置的优先级别是什么?

24. 浏览器的本地缓存分为哪几类?

25. Cookie中的常用属性有哪些?说一下他们的适用场景

26.  Cookie的优缺点?

27. Cookie的安全改进措施是什么

28. localStorage和Cookie的区别

29. sessionStorage和localStorage的区别

30. IndexedDB的特点是什么?

31. WebSQL的特点是什么?

32. Cookie、Session、Token的功能与区别

33. 服务器验证(服务器记录session id)的缺点是什么?

34. 详述Token的原理以及Token的特性(为什么会用Token)?

三、重绘、回流、防抖、垃圾回收、兼容问题

35. 回流是什么?触发条件是什么?列出几种常见属性

36. 重绘是什么?触发条件是什么?列出几种常见属性

37. 合成什么?有什么优点?

38. 重绘、回流有什么指导意义?(即在开发中有什么优化方案避免这些问题?)

39. 节流是什么?怎么实现?(可能会手写代码)

40. 防抖是什么?怎么实现?(可能会手写代码)

41. 加强版节流是什么?怎么实现?(可能会手写代码)

42.  为什么要图片懒加载?说一下懒加载的几种常用方法?

43. 浏览器垃圾回收机制解决了什么问题?主要有哪几种方法(说明原理)?

44. 说一下CG算法的原理

45. 浏览器为什么会出现兼容问题?解决方法都有哪些?

四、浏览器的跨域和安全问题

46. 说一下浏览器的同源策略,浏览器跨域问题为什么会出现?

47. 细说常见的解决方法和其优缺点是什么?(越详细越好,记得代码实现)

48. XSS攻击的分类和攻击原理是什么?防范手段有哪些?

49. CSRF攻击的分类和攻击原理是什么?防范手段有哪些?

50. SQL注入的攻击原理是什么?防范手段有哪些?

51. 点击劫持(界面操作劫持)的攻击原理是什么?防范手段有哪些?

52. 中间人攻击的攻击原理是什么?防范手段有哪些?

重点总结->浏览器面试灵魂50问(一)相关推荐

  1. GitHub 标星 7k+,面试官的灵魂 50 问,问到你怀疑人生!

    (给视学算法加星标,修炼编程内功) 来源:安妮 发自 凹非寺 量子位 出品 | 公众号 QbitAI 相信大家在面试的时候都会经历过,跟 HR 或技术 Leader 聊到最后一步时,他们往往能抛出一个 ...

  2. 技术面试时该反问面试官什么问题?小伙整理了灵魂50问,GitHub日入2500星

    安妮 发自 凹非寺 量子位 出品  | 公众号 QbitAI 看了那么多技术类岗位面试攻略,好不容易到了最后一步.部门leader/HR反问一句: 你还有什么要问我的? 没有问题,略显尴尬,显得你对这 ...

  3. GitHub 标星 7000+,面试官的灵魂 50 问,问到你怀疑人生!

    安妮 发自 凹非寺 量子位 出品 | 公众号 QbitAI 相信大家在面试的时候都会经历过,跟 HR 或技术 Leader 聊到最后一步时,他们往往能抛出一个令人深思的问题: 对于我们公司,你还有什么 ...

  4. TCP 协议面试灵魂 12 问 | 强势整理

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | urlify.cn/rqumIn 先亮出这篇文 ...

  5. TCP协议面试灵魂10问 | 强势整理

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"加群",加入新技术 来源 | urlify.cn/rqumIn 先亮出这篇文章的思维导 ...

  6. TCP 协议面试灵魂10问,建议收藏~

    Proc 先亮出这篇文章的思维导图 TCP 作为传输层的协议,是一个软件工程师素养的体现,也是面试中经常被问到的知识点.在此,我将 TCP 核心的一些问题梳理了一下,希望能帮到各位. 001. 能不能 ...

  7. JAVA面试灵魂108问(三十六)---实战那些事儿2

      大家好,我是陈哈哈,北漂五年.相信大家和我一样,都有一个大厂梦,作为一名资深Java选手,深知面试重要性,接下来我准备用100天时间,基于Java岗面试中的高频面试题,以每日3题的形式,带你过一遍 ...

  8. 全网第一 | Flink学习面试灵魂40问答案,文末有福利!

    大数据技术与架构 点击右侧关注,大数据开发领域最强公众号! 暴走大数据 点击右侧关注,暴走大数据! 来源:王知无 作者:王知无 By 暴走大数据 场景描述:这是一份Flink学习面试指北.看看你搞清楚 ...

  9. JAVA面试灵魂108问(二十六)---JVM2

      大家好,我是陈哈哈,北漂五年.相信大家和我一样,都有一个大厂梦,作为一名资深Java选手,深知面试重要性,接下来我准备用100天时间,基于Java岗面试中的高频面试题,以每日3题的形式,带你过一遍 ...

最新文章

  1. Linux wc指令统计文件信息
  2. mysql存储过程时间_mysql时间操作函数和存储过程
  3. Apache Hadoop 答疑:解决 Apache Hadoop 启动时 DataNode 启动异常的问题
  4. Microsoft Updater Application Block 1.2.1 核心设计(core design) [翻译]
  5. 走近算法:受众行为分析与人群定向
  6. unity WWW读取StreamingAssets文件
  7. 安装ROS中出现bash: /opt/ros/melodic/setup.bash: 没有那个文件或目录或者bash: /opt/ros/kinetic/setup.bash:的解决办法
  8. xbox360自建服务器,Xbox360自制系统GOD版的游戏怎么安装
  9. 交游首款游戏曝光 《张狂交游》打破垂头交际
  10. 手动 php-mysql_win7下手动配置apache+php+mysql记
  11. Java攻略之API
  12. 2. 487-3279
  13. 插值多项式的龙格现象的介绍与模拟
  14. Coursera | Andrew Ng (01-week-2-2.17)—Jupyter _ ipython 笔记本的快速指南
  15. c# ffmpeg视频转换
  16. 微信小程序助力社区便利店利润破百万
  17. c++函数模板,有默认参数的函数
  18. 从事大数据征信行业,你必须知道这些
  19. ffmpeg-avi转mp4命令
  20. AI大潮下的软件工程发展趋势

热门文章

  1. 财务数据分析怎么做?财务公司应用方案
  2. 巴哈马证券监管机构提出加密代币销售规则
  3. SendWS-Whatsapp全球通讯拓客工具
  4. 微型计算机技术历年真题,历年真题《微型计算机接口技术》2010.01
  5. c#购物车功能实现,用户登录及收藏功能实现
  6. android客户端集成微信登录
  7. 泰坦尼克号python数据分析统计服_泰坦尼克号乘客数据分析
  8. 【Y忍冬草】QT界面动态图的实现
  9. iPhone 11、iPhone 11 Pro、iPhone 11 Pro Max 屏幕尺寸,分辨率,PPI 详细数据对比
  10. 卸载oracle exp 组件,oracle Spatial 组件卸载