完整面试题地址:作者:程序员poetry 扫码关注作者公众号:「前端进阶之旅」 每天分享技术干货前端高频面试题-进阶篇 | JS高级、性能优化、工程化、源码解析全攻略正在加载内容...基础篇进阶篇高频篇精选篇手写篇原理篇面经篇AI 面试自检篇每日一题更多综合综合题型其他问题设计模式思维导图学习路线前端基础HTTP浏览器计算机基础进阶学习NPM工作流DockerCanvasNode学习指南前端综合文章其他Handbook职场话题CSS可视化小程序题库公众号动态博客动态开发者导航基础进阶
基础篇进阶篇一、JS基础1 类型及检测方式2 This3 apply/call/bind 原理4 变量提升5 执行上下文6 作用域7 闭包8 New的原理9 原型/原型链10 继承11 面向对象12 事件机制13 模块化14 Iterator迭代器15 Promise16 Generator17 async/await18 事件循环19 垃圾回收20 内存泄露21 深浅拷贝22 节流与防抖23 Proxy代理24 Ajax25 深入数组二、HTML1 meta 标签:自动刷新/跳转2 viewport3 性能优化4 如何高效操作DOM三、CSS基础1 盒模型2 BFC3 层叠上下文4 左右居中方案5 上下垂直居中方案6 选择器权重计算方式7 清除浮动8 左边定宽,右边自适应方案9 左右两边定宽,中间自适应10 CSS动画和过渡11 CSS3的新特性12 列举几个css中可继承和不可继承的元素四、浏览器1 浏览器架构2 JavaScript单线程模型3 Chrome 打开一个页面需要启动多少进程?分别有哪些进程?4 渲染机制5 缓存机制6 浏览器存储7 跨域方案8 XSS 和 CSRF9 Service Worker10 DOM 节点操作11 掌握页面的加载过程12 从输入URL到页面展示过程13 渲染引擎什么情况下才会为特定的节点创建新的图层14 定时器与requestAnimationFrame、requestIdleCallback五、框架通识六、Vue1 Vue 响应式原理2 发布订阅模式和观察者模式3 为什么使用 Virtual DOM4 VDOM:三个 part5 vue 和 react技术选型6 nextTick7 生命周期8 vue-router9 vuex10 vue3带来的新特性/亮点11 Compositon api12 computed 的实现原理13 watch 的理解14 vue 渲染过程15 说一说keep-alive实现原理16 为什么访问data属性不需要带data17 template预编译是什么18 介绍一下Vue中的Diff算法19 说说Vue2.0和Vue3.0有什么区别七、React0 对虚拟DOM的理解1 谈谈你对React的理解2 如何避免React生命周期中的坑3 React Fiber架构4 createElement过程5 调和阶段 setState内部干了什么6 setState7 setState原理分析8 React事务机制9 React组件和渲染更新过程10 如何解释 React 的渲染流程11 diff算法是怎么运作12 合成事件原理13 JSX语法糖本质14 为什么 React 元素有一个 $$typeof 属性15 Virtual DOM 的工作原理是什么16 React有哪些优化性能的手段17 Redux实现原理解析18 谈谈你对状态管理的理解19 connect组件原理分析20 React Hooks21 受控组件和非受控组件22 如何避免ajax数据请求重新获取23 组件之间通信24 类组件与函数组件有什么区别呢?25 如何设计React组件26 组件的协同及(不)可控组件27 React-Router 的实现原理及工作方式分别是什么28 React 17 带来了哪些改变八、性能1 DNS 预解析2 缓存3 使用 HTTP / 2.04 预加载5 预渲染6 懒执行与懒加载7 文件优化8 其他9 如何根据chrome的timing优化10 移动端优化九、工程化1 介绍一下 webpack 的构建流程2 介绍 Loader3 介绍 plugin4 webpack 热更新实现原理5 webpack 层面如何做性能优化6 介绍一下 Tree Shaking7 介绍一下 webpack scope hosting8 Webpack Proxy工作原理?为什么能解决跨域9 介绍一下 babel原理10 介绍一下Rollup十、HTTPHTTP状态码1 HTTP前生今世2 HTTP世界全览3 HTTP分层4 HTTP报文是什么样子的5 HTTP之URL6 HTTP实体数据7 谈一谈HTTP协议优缺点8 说一说HTTP 的请求方法9 谈一谈GET 和 POST 的区别10 谈一谈队头阻塞问题11 谈一谈HTTP数据传输12 cookie 和 session13 介绍一下HTTPS和HTTP区别14 HTTPS握手过程15 介绍一个HTTPS工作原理16 SSL 连接断开后如何恢复17 谈一谈你对HTTP/2理解18 HTTP319 HTTP/1.0 HTTP1.1 HTTP2.0版本之间的差异20 DNS如何工作的21 短轮询、长轮询和 WebSocket 间的区别22 说一说正向代理和反向代理23 介绍一下Connection:keep-alive24 http/https 协议总结25 TCP为什么要三次握手26 为什么要有 WebSocket27 UDP和TCP有什么区别十一、9种前端常见的设计模式1. 外观模式2. 代理模式3. 工厂模式4. 单例模式5. 策略模式6. 迭代器模式7. 观察者模式8. 中介者模式9. 访问者模式十二、综合问题前端常见面试流程面试一定要问这几个问题经历项目相关项目难点问题分析项目流程相关面试题把握投递简历的黄金时间段把握面试时的关键点工作交接流程 & 福利衔接十三、人事面第一个要点: 你是否胜任这份工作?第二个要点:你是怎样的人?第三个要点:你是否适合这个企业?第四个要点:聘用你,公司需付出多少?高频篇手写篇综合题型其他问题设计模式精选模块