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

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

一、浏览器原理

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. 中间人攻击的攻击原理是什么?防范手段有哪些?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值