前端面试考察内容

1、你在前端领域,你最核心的竞争力是什么?为什么认为它是你在前端领域最核心的竞争力?你这个核心竞争力,别人替代你的成本高不高?

2、聊聊你的前端技术栈,尽量详细一些。在这些技术栈中,有没有去研究它们的源码?去弄清楚它们的实现原理?以及它们的优势与缺陷?想过没有,如何去优化它们的缺陷?

3、简述一下浏览器的核心工作机制,一个Web网页,在浏览器中的生命周期是什么?都经历过哪些流程?

4、谈谈你对进程、线程、协程的理解?有没有写过多线程的程序片段?何时挂起协程?何时唤醒协程?如何保护协程运行时的上下文?

5、谈谈几种常见的数据结构?以及这些数据结构之间的差异是什么?

6、谈谈你对线性表结构中链式存储结构、顺序存储结构、栈、队列理解?

7、研究过HTTP协议吗?HTTP常见状态码有哪些?有没有研究过206状态码,它具体代表什么?如何变化?

8、了解原生AJAX与Fetch吗?它的生命周期都有哪些?如何实现一个拦截AJAX的程序片段?如何解决优化大文件上传和断点续传的问题?

9、谈谈Vue、React的生命周期?这些生命周期有什么特点?平时如何运用这些生命周期?

10、谈谈Vue、React组件的通信机制,以及Vuex、Redux的实现原理?

11、谈谈CSS的布局?CSS的五种定位属性是什么?这五种定位属性有什么差异?BFC的机制是什么?如何实现响应式布局与流式布局?

12、做过CSS的最复杂功能是什么?其难点在哪里?具体是如何优化的?

13、谈谈常见的跨域解决方案?每一种跨域解决方案之间的差异是什么?

14、谈谈常见的安全攻击与防御解决方案?每一种安全攻击与防御解决方案之间的差异是什么?

15、谈谈前端的性能瓶颈有哪些?如何去解决这些性能瓶颈?

16、没有研究过JS?为什么JS被设计成单线程?

17、谈谈你对JS中事件循环(Event Loop)与事件队列(Event Queue)?以及微任务与宏任务的差异?

18、谈谈前端的延迟加载、并行加载、异步加载、同步加载之间的差异?

19、谈谈JS的加载机制与执行时机?以及defer与async之间的机制?

20、目前用到的数据可视化技术有哪些?有没有研究过SVG、canvas、audio、video、WebGL、WebRTC?

21、平时自己喜欢折腾造轮子吗?造过哪些轮子?用过哪些JS库?有没有用过Rx.js、TypeScript、Vant、AjaxHook、Axios、lodash、require、swiper等基础JS库?

22、有没有用C++、node.js、Python写过项目?

23、如何独立部署一个Web网站?有没有用过Nginx等基础服务器?

24、在从事前端职业生涯中,你是如何提升你技术能力呢?以及如何解决超出你认知外的技术问题?

你可能感兴趣的:(php笔试/面试题)