很大程度上来说,因为"面试造火箭",所以不是很建议大家花费大量时间与精力去吃透一些技术难点,对于面试可能影响并不大。
很现实的情况是,今年大部分的前端,都是先混进去再说,无论你现在是1-8年哪一年的经验。
面试前准备
技术准备再多,不如对症下药,一些中大厂可查阅最近的面经来了解面试内容,从而做准备,同时对自己简历中写的项目要吃透,最好在查漏补缺一下,就可以去面试了
如果是小厂和低年限,或者入行不久的前端,那么从技术栈出发,js基础原理,项目经验不需要多厉害,只需要表现出在项目起到的作用,遇到什么难点,怎么解决的,编故事大家应该都不陌生,同时,要注意最近面试中重复率较高的一些面试内容,例如今年问最多的:场景题
另外简历作为面试的敲门砖,包装和精简的描写必不可少,有哪些需要注意的点,有哪些误区不能写等等
以上如果有需要可以DD我,这些我都有现成的,不需要你多准备
https://github.com/encode-studio-fe/natural_traffic/wiki/scan_material5
接下来给大家整理一些基本大家都遇到过的场景题
-
怎么在前端页面中添加水印?
-
如何封装一个请求,让其多次调用的时候,实际只发起一个请求的时候,返回同一份结果
-
web网页如何禁止别人移除水印
-
react中怎么实现下拉菜单场景,要求点击区域外能关闭下拉组件
-
React 如何实现vue 中 keep-alive 的功能?
-
如何监控前端页面的崩溃?
-
如何搭建一套灰度系统?
-
如何在前端团队快速落地代码规范
-
前端如何实现即时通讯?
-
用户访问页面白屏了,原因是啥,如何排查?
-
如何给自己团队的大型前端项目设计单元测试?
-
如何做一个前端项目工程的自动化部署,有哪些规范和流程设计?
-
你参与过哪些前端基建方面的建设?
-
假如让你负责一个商城系统的开发,现在需要统计商品的点击量,你有什么样设计与...
-
前端怎么做错误监控?
-
token过期后,页面如何实现无感刷新?
-
如何解决页面请求接口大规模并发问题
-
web应用中如何对静态资源加载失败的场景做降级处理?
-
什么是单点登录,以及如何进行实现?
-
SPA首屏加载速度慢的怎么解决
-
站点一键换肤的实现方式有哪些?
-
实现table header 吸顶,有哪些实现方式?
-
怎么实现扫码登录?
-
如果用户说web应用感觉很反应慢或者卡顿,该如何排查?
-
如何设计一套统计全站请求耗时的工具
-
你是怎么理解前端架构的?
-
怎么分析页面加载慢的原因?
-
为什么在技术选型中选择了webpack?
-
如果想在小程序中嵌入markdown的文档,你有什么思路?
-
前端如何实现截图?
完整内容有163题,以下是完整(含答案但写出来太长暂略)
1.如何判断用户设备
2将多次提交压缩成一次提交
3.介绍下navigator.sendBeacon方法
4.混动跟随导航(电梯导航)该如何实现
5退出浏览器之前,发送积压的埋点数据请求,该如何做?
6如何统计页面的long task(长任务)【热度:140】
7.PerfoemanceObserver如何测量页面性能
移动端如何实现下拉滚动加载(顶部加载)
9.判断页签是否为活跃状态
10.在网络带宽一定的情况下,切片上传感觉和整体上传消费的时间应该是差不多的这种说法正确吗?
11.大文件切片上传的时候,确定切片数量的时候,有哪些考量因素
12.页面关闭时执行方法,该如何做
13.如何统计用户pv访问的发起请求数量
14.长文本溢出,展开/收起如何实现
15.如何实现鼠标拖拽
16.统计全站每一个静态资源加载耗时,该如何做
17.防止前端页面重复请求
18.ResizeObserver作用是什么
19.要实时统计用户浏览器窗口大小,该如何做
20.当项目报错,你想定位是哪个commit引|入的错误的时,该怎么做
21.如何移除一个指定的commit
22.如何还原用户操作流程
23.可有办法将请求的调用源码地址包括代码行数也上报上去?
24.请求失败会弹出一个toast,如何保证批量请求失败,只弹出一个toast【热度:420)
25.如何减少项目里面if-else【热度:310】
26.babel-runtime作用是啥【热度:200】
27.如何实现预览PDF文件
28.如何在划词选择的文本上添加右键菜单(划词:标滑动选择一组字符,对组字符进行操作)【热度:100】
29.富文本里面,是如何做到划词的(鼠标滑动选择一组字符,对组字符进行操作)?【热度:100】
30.如何做好前端监控方案【热度:672】
31.如何标准化处理线上用户反馈的问题【热度:631】
32.px 如何转为rem【热度:545】
33.浏览器有同源策略,但是为何cdn请求资源的时候不会有跨域限制【热度:579】
34.cookie可以实现不同域共享吗【热度:533】
35.axios是否可以取消请求【热度:532】
36.前端如何实现折叠面板效果?
37.dom里面,如何判定a元素是否是b元素的子元素【热度:400】
38.判断一个对象是否为空,包含了其原型链上是否有自定义数据或者方法。该如何判定?
39.is如何判空?「空」包含了:空数组、空对象、空字符串、0、undefined、null、空map、空
set都属于为空的数据【热度:640】
40.css实现翻牌效果【热度:116】
41.flex:1代表什么【热度:400】
42.一般是怎么做代码重构的
43.如何清理源码里面没有被应用的代码,主要是JS、TS.CSS代码【热度:329】
44.前端应用如何做国际化?【热度:199】
45.应用如何做应用灰度发布【热度:247】
46.「微前端]为何通常在微前端应用隔离,不选择iframe方案【热度:280】
47.[微前端]Qiankun是如何做Js隔离的【热度:228】
48.[微前端]微前端架构一般是如何做JavaScript隔离
49.[React]循环渲染中为什么推荐不用index 做key【热度:320】
50.[React]如何避免使用context的时候,引起整个挂载节点树的重新渲染【热度:420】
51.前端如何实现截图?
52.当QPS达到峰值时,该如何处理?
53.js超过Number最大值的数怎么处理?
54.使用同一个链接,如何实现PC打开是web应用、手机打开是一个H5应用?【腾讯二面】
55.如何保证用户的使用体验【字节一面】
56.如何解决页面请求接口大规模并发问题【必会】
57.设计一套全站请求耗时统计工具
58.大文件上传了解多少【百度一面】
59.H5如何解决移动端适配问题【美团一面】
60.站点一键换肤的实现方式有哪些?【美团一面】
61.如何实现网页加载进度条?【百度一面】
62.常见图片懒加载方式有哪些?【京东一面】
63.cookie构成部分有哪些【百度一面】
64.扫码登录实现方式【腾讯一面]
65.DNS协议了解多少【字节一面】
66.函数式编程了解多少?【京东一面】
67.前端水印了解多少?【腾讯一面】
68.什么是领域模型【必会】
69.一直在window上面挂东西是否有什么风险【百度一面】
70.深度SEO优化的方式有哪些,从技术层面来说
71.小程序为什么会有两个线程【腾讯一面】
72.web应用中如何对静态资源加载失败的场景做降级处理
73.html中前缀为data-开头的元素厘性是什么?
74.移动端如何实现上拉加载,下拉刷新?【字节一面】
75.如何判断dom元素是否在可视区域【字节一面】
76.前端如何用canvas来做电影院选票功能【美团一面】
77.如何通过设置失效时间清除本地存储的数据?【腾讯二面】
78.如果不使用脚手架,如果用webpack构建一个自己的react应用
79.用nodejs实现一个命令行工具,统计输入目录下面指定代码的行数
80.packagejson里面sideEffects厘性的作用是啥【必会】
81.script标签上有那些厘性,分别作用是啥?【必会】
82.为什么SPA应用都会提供一个hash路由,好处是什么?
83.[React]如何进行路由变化监听【字节一面】
84.单点登录是是什么,具体流程是什么【腾讯一面】
85.web网页如何禁止别人移除水印【百度一面】
86.用户访问页面白屏了,原因是啥,如何排查?
87.[代码实现]s中如何实现大对象深度对比
88.如何理解数据驱动视图,有哪些核心要素?【腾讯二面】
89.vue-cli都做了哪些事儿,有哪些功能?
90.JS执行100万个任务,如何保证浏览器不卡顿?【百度一面】
91.JS放在head里和放在body里有什么区别?
92.Eslint代码检查的过程是啥?【必会】
93.虚拟混动加载原理是什么,用JS代码简单实现一个虚拟滚动加加载
94.[React]react-router和原生路由区别
95.html的行内元素和块级元素的区别【京东一面】
96.介绍-下 requestldleCallback api
97.documentFragment api是什么,有哪些使用场景?【必会】
98.git pull和 git fetch 有啥区别?
99.前端如何做页面主题色切换【腾讯一面】
100.前端视角-如何保证系统稳定性【字节一面]
101.如何统计长任务时间、长任务执行次数【腾讯二面】
102.V8里面的JT是什么?【京东一面]
103.用Js写一个cookies解析函数,输出结果为一个对象
104.vue中Scoped Styles是如何实现样式隔离的,原理是啥
105.样式阿商方式有哪些【字节一面】
106.在JS中,如何解决递归导致栈溢出问题?
107.站点如何防止爬虫?【百度一面】
108.ts项目中,如何使用node modules里面定义的全局类型包到自己项目src下面使用?【百度二面】
109.不同标签页或窗口间的【主动推送消息机制】的方式有哪些?(不借助服务端)
110.【React】在react项目开发过程中,是否可以不用reactrouter使用浏览器原生history路由来组织页面路由?
111.在表单校验场景中,如何实现页面视口滚动到报错的位置
112,如何一次性渲染十万条数据还能保证页面不卡顿【百度二面】
113.【webpack】打包时hash码是如何生成的【必会】
114.如何从0到1搭建前端基建【京东一面】
115.你在开发过程中,使用过哪些TS的特性或者能力?【美团一面】
116.JS 的加载会阻塞浏览器渲染吗?【百度一面】
117.浏览器对队头阻寒有什么优化?【百度一面)
118.Webpack项目中通过script标签引入资源,在项目中如何处理?
119.应用上线后,怎么通知用户刷新当前页面?【腾讯一面】
120.Eslint 代码检查的过程是啥?
121.HTTP是一个无状态的协议,那么Web应用要怎么保持用户的登录态呢?
122.如何检测网页空闲状态(一定时间内无操作)【百度二面】
123.为什么Vite速度比Webpack快?
124.列表分页,快速翻页下的竟态问题【百度二面】
125.JS执行100万个任务,如何保证浏览器不卡顿?
126.git仓库迁移应该怎么操作
127.如何禁止别人调试自己的前端页面代码?【字节二面】
128.web系统里面,如何对图片进行优化?【必会】
129.0Auth2.0是什么登录方式
130.单点登录是如何实现的?
131.常见的登录鉴权方式有哪些?
132.需要在跨域请求中携带另外一个域名下的Cookie该如何操作?
133.vite和webpack 在热更新上有啥区别?
134.封装一个请求超时,发起重试的代码
135.前端如何设置请求超时时间timeout【必会】
136.nodejs如何充分利用多核CPU?【字节二面】
137.后端一次性返回树形结构数据,数据量非常大前端该如何处理?
138.你认为组件封装的一些基本准则是什么?
139.页面加载速度提升(性能优化)应该从哪些反向来思考?
140.前端日志埋点SDK设计思路
141.token进行身份验证了解多少?【腾讯一面】
142.在前端应用如何进行权限设计?【字节二面】
143.【低代码】代码平台一般泊染是如何设计的?
144.【低代码】代码平台一般底层协议是怎么设计的
145.[Webpack】有哪些优化项目的手段?
146.IndexedDB存储空间大小是如何约束的?
147.浏览器的存储有哪些【腾讯一面】
148.【Webpack】如何打包运行时chunk,且在项自工程中如何去加载这个运行时chunk?
149.为何现在市面上做表格泊染可视化技术的,大多数都是canvas,而很少用svg的?
150.在你的项目中,使用过哪些webpack plugin,说一下他们的作用
151.在你的项目中,使用过哪些webpackloader,说一下他们的作用
152.【React】如何避免不必要的染?【美团一面】
153.全局样式命名冲突和样式盖问题怎么解决?
154.【React】如何实现专场动画?
155.【React】从React层面上,能做的性能优化有哪些?
156.【VUE】中为何不要把v-f和v-for同时用在同一个元素上,原理是什么?
157.将静态资源缓存在本地的方式有哪些?
158.SPA首屏加载速度慢的怎么解:决
159.axios是如何区分是nodejs环境还是浏览器环境的?
160.如何拦截web应用的请求
161.前端有哪些跨页面通信方式?
162.H5下拉刷新如何实现?
163.如何修改第三方npm包?
前端面试八股
JavaScript
1.不会冒泡的事件有哪些?
- mouseEnter 和 mouseOver 有什么区别?
3.MessageChannel是什么,有什么使用场景?
- async、await 实现原理
5.Proxy能够监听到对象中的对象的引用吗?
6.如何让var[a, b]={a: 1, b: 2} 解构赋值成功?
7.下面代码会输出什么?
8.描述下列代码的执行结果
9.什么是作用域链?
10.bind、call、apply有什么区别?如何实现一个bind?
11.common.js和es6中模块引I入的区别?
12.说说vue3中的响应式设计原理
13.script标签放在header里和放在body底部里有什么区别?
14.下面代码中,点击"+3"按钮后,age的值是什么?
15.Vue中,created和mounted两个钩子之间调用时间差值受什么影响?
16.vue中,推荐在哪个生命周期发起请求?
17.为什么Node在使用esmodule时必须加上文件扩展名?
18.package.json文件中的 devDependencies 和 dependencies 对象有...
- React Portals 有什么用?
20.react 和react-dom是什么关系?
21.MessageChannel是什么,有什么使用场景?
22.React 中为什么不直接使用requestIdleCallback?
23.为什么react需要fiber架构,而Vue却不需要?
24.子组件是一个Portal,发生点击事件能冒泡到父组件吗?
25.async、await 实现原理
26.前端性能优化指标有哪些?怎么进行性能检测?
Vue 面试题
1.Vue有了数据响应式,为何还要diff?
2.vue3为什么不需要时间分片?
3.vue3为什么要引I入Composition API?
4.谈谈Vue事件机制,并手写on、off、emit、once
5.computed计算值为什么还可以依赖另外---个computed计算值?
6.说下vm.$set 原理
7.怎么在Vue中定义全局方法?
8.Vue中父组件怎么监听到子组件的生命周期?
9.vue组件里写的原生addEventListeners监听事件,要手动去销毁吗?..
10.说说vue3中的响应式设计原理
11.Vue中,created和mounted两个钩子之间调用时间差值受什么影响?
12.vue中,推荐在哪个生命周期发起请求?
13.为什么react需要fiber架构,而Vue却不需要?
14.SPA(单页应用)首屏加载速度慢怎么解决?
15.说下Vite的原理
16.Vue2.0为什么不能检查数组的变化,该怎么解决?
17.说说Vue页面渲染流程
18.vue中computed和watch区别
19.vuex中的辅助函数怎么使用?
20.如果使用Vue3.0实现一个Modal,你会怎么进行设计?
21.Vue 3.0中Treeshaking特性是什么,并举例进行说明?
22.Vue3.0所采用的 Composition Api与Vue2.x 使用的 Options Api 有...
23.Vue3.0性能提升主要是通过哪几方面体现的?
24.Vue3.0的设计目标是什么?做了哪些优化?
25.你是怎么处理vue项目中的错误的?
26.Vue项目如何进行部署?是否有遇到部署服务器后刷新404问题?
React 面试题
1.下面代码中,点击"+3"按钮后,age的值是什么?
-
React Portals 有什么用?
-
react 和 react-dom是什么关系?
-
React 中为什么不直接使用requestIdleCallback?
5.为什么react需要fiber 架构,而Vue却不需要?
6.子组件是一个Portal,发生点击事件能冒泡到父组件吗?
- React 为什么要废弃componentWillMount、componentWillReceivePr...
8.说说React render方法的原理?在什么时候会被触发?
9.说说React事件和原生事件的执行顺序
10.说说对受控组件和非受控组件的理解,以及应用场景?
11.你在React项目中是如何使用Redux的?项目结构是如何划分的?
12.说说对Redux中间件的理解?常用的中间件有哪些?实现原理?
13.说说你对Redux的理解?其工作原理?
14.说说你对immutable的理解?如何应用在react项目中?
15.说说ReactJsx转换成真实DOM过程?
16.说说你在React项目是如何捕获错误的?
17.说说React服务端渲染怎么做?原理是什么?
18.ReactFiber是如何实现更新过程可控?
19.Fiber为什么是React 性能的一个飞跃?
20.setState是同步,还是异步的?
21.简述下React的事件代理机制?
22.简述下React的生命周期?每个生命周期都做了什么?
23.为什么不能在循环、条件或嵌套函数中调用Hooks?
24.说说你对useContext的理解
25.说说你对useMemo的理解
26.说说你对自定义hook的理解
算法 面试题
- 最大的钻石
2.举例说明你对尾递归的理解,以及有哪些应用场景
3.去除字符串中出现次数最少的字符,不改变原字符串的顺序。
4.请手写"快速排序"
5.洗牌算法
6.什么是尾调用优化和尾递归?
7.合并K个升序链表
8.什么是时间复杂度?
9.请手写"基数排序"
10.请手写"桶排序"
11.请手写"计数排序"
12.请手写"堆排序"
13.请手写"归并排序"
14.请手写"希尔排序"
15.请手写"插入排序"
16.请手写"选择排序"
17.请手写"冒泡排序"
18.写一个LRU缓存函数
19.实现一个函数,判断输入是不是回文字符串。
Node.js 面试题
1.common.js和es6中模块引入的区别?
2.为什么Node在使用esmodule时必须加上文件扩展名?
3.浏览器和Node中的事件循环有什么区别?
4.Node性能如何进行监控以及优化?
5.如果让你来设计一个分页功能,你会怎么设计?前后端如何交互?
6.如何实现文件上传?说说你的思路
7.如何实现jwt鉴权机制?说说你的思路
8.说说对中间件概念的理解,如何封装node中间件?
9.说说Node文件查找的优先级以及Require方法的文件查找策略?
10.说说对Nodejs中的事件循环机制理解?
11.说说Node中的EventEmitter?如何实现---个EventEmitter?
12.说说对Node中的Stream的理解?应用场景?
13.说说对Node中的Buffer的理解?应用场景?
14.说说对Node中的fs模块的理解?有哪些常用方法
15.说说对Node中的process的理解?有哪些常用方法?
16.Node.js 有哪些全局对象?
17.说说你对Node.js的理解?优缺点?应用场景?
18.body-parser这个中间件是做什么用的?
19.Koa中,如果一个中间件没有调用await nextO,后续的中间件还会...
20.在没有async await的时候,koa是怎么实现的洋葱模型?
21.koa框架中,该怎么处理中间件的异常?
22.Node.js 如何调试?
23.说说你对koa洋葱模型的理解
24.pm2守护进程的原理是什么?
25.koa和express有哪些不同?
26.两个Node.js进程如何通信?
Typescript 面试题
1.说说对TypeScript 中命名空间与模块的理解?区别?
2.说说你对 typescript 的理解?与javascript 的区别?
3.Typescript中泛型是什么?
4.TypeScript中有哪些声明变量的方式?
5.什么是Typescript的方法重载?
6.请实现下面的sleep方法
- typescript 中的 is关键字有什么用?
8.TypeScript支持的访问修饰符有哪些?
9.请实现下面的myMap方法
10.请实现下面的 treePath方法
11.请实现下面的product 方法
12.请实现下面的 myAll 方法
13.请实现下面的sum方法
14.请实现下面的mergeArray方法
15.实现下面的firstSinglechar方法
16.实现下面的 reverseWord方法
17.如何定义一个数组,它的元素可能是字符串类型,也可能是数值类...
18.请补充objToArray函数
19.使用TS实现一个判断传入参数是否是数组类型的方法
20.TypeScript的内置数据类型有哪些?
21.ts中any和unknown有什么区别?
22.如何将unknown类型指定为一个更具体的类型?
23.使用ts实现一个判断入参是否是数组类型的方法?
24.tsconfig.json文件有什么用?
25.TypeScript中的 Declare关键字有什么用?
26.解释一下TypeScript中的枚举。
性能优化 面试题
1.script标签放在header里和放在body底部里有什么区别?
2.前端性能优化指标有哪些?怎么进行性能检测?
3.SPA(单页应用)首屏加载速度慢怎么解决?
4.如何使用CSS提高页面性能?
5.怎么进行站点内的图片性能优化?
6.虚拟DOM---定更快吗?
7.有些框架不用虚拟dom,但是他们的性能也不错是为什么?
8.如果某个页面有几百个函数需要执行,可以怎么优化页面的性能?
9.讲一下png8、png16、png32的区别,并简单讲讲png 的压缩原理
10.页面加载的过程中,JS文件是不是一定会阻塞DOM和CSSOM的...
11.React.memo(和useMemo(O)的用法是什么,有哪些区别?
12.导致页面加载白屏时间长的原因有哪些,怎么进行优化?
13.如果一个列表有100000个数据,这个该怎么进行展示?
14.DNS预解析是什么?怎么实现?
15.在React中可以做哪些性能优化?
16.浏览器为什么要请求并发数限制?
17.如何确定页面的可用性时间,什么是PerformanceAPI?
18.谈谈对window.requestAnimationFrame的理解
19.css加载会造成阻塞吗?
20.什么是内存泄漏?什么原因会导致呢?
21.如何用webpack来优化前端性能
22.说说常规的前端性能优化手段
23.什么是CSS Sprites?
24.CSS优化、提高性能的方法有哪些?
25.script 标签中,async 和defer两个属性有什么用途和区别?
编程 面试题
1.使用Promise实现红绿灯交替重复亮
2.bind、call、apply有什么区别?如何实现---个bind?
3.利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功...
4.说说new操作符具体干了什么?
5.如何实现上拉加载,下拉刷新?
6.大文件怎么实现断点续传?
7.什么是防抖和节流,以及如何编码实现?
8.说说ajax的原理,以及如何实现?
9.深拷贝浅拷贝有什么区别?怎么实现深拷贝?
10.用js实现二叉树的定义和基本操作
11.如何实现一个轮播图组件?
12.写出一个函数trans,将数字转换成汉语的输出,输入为不超过1000..
13.将下面的数组转成树状结构
14.编写一个vue组件,组件内部使用插槽接收外部内容,v-model双向..
15.实现lodash的set和get方法
16.去除字符串中出现次数最少的字符,不改变原字符串的顺序。
17.实现一个批量请求函数,要求能够限制并发量
18.树转数组
19.数组转树
20.删除链表的一个节点
21.请实现一个函数,要求能在页面请求很多时,尽可能快地按照顺序...
22.实现一个请求函数:fetchWithRetry,要求会最多自动重试3次,任..
23.链表中,环的入口节点
24.多叉树指定层节点的个数
25.请手写"快速排序"
26.使用js实现有序数组原地去重
工程化 面试题
- package.json文件中的 devDependencies 和 dependencies对象有什...
2.webpack5的主要升级点有哪些?
3.说下Vite的原理
4.与webpack类似的工具还有哪些?区别?
5.说说如何借助webpack来优化前端性能?
6.说说webpack proxy工作原理?为什么能解决跨域?
7.说说webpack的热更新是如何做到的?原理是什么?
8.面试官:说说Loader和Plugin的区别?编写Loader,Plugin的思路?
9.说说webpack中常见的Plugin?解决了什么问题?
10.说说webpack中常见的Loader?解决了什么问题?
11.说说webpack的构建流程?
12.说说你对webpack的理解?解决了什么问题?
13.webpack loader 和plugin实现原理
14.如何提高webpack的构建速度?
15.说说webpack-dev-server 的原理
16.你对babel了解吗,能不能说说几个stage代表什么意思?
17.webpack的module、bundle、chunk分别指的是什么?
18.什么是CI/CD?
19.说说你对前端工程化的理解
20.说说你对SSG的理解
21.聊聊 vite 和webpack 的区别
22.webpack treeShaking机制的原理是什么?
23.介绍一下tree shaking及其工作原理
24.前后端分离是什么?
25.Babel的原理是什么
26,webpack的热更新是如何做到的?说明其原理
手撕代码题
1实现防抖函数(debounce)
2实现节流函数(throttle)
3 实现instanceOf
4实现new的过程
5实现call方法
6实现apply方法
7实现bind方法
8实现深拷贝
9实现类的继承
10实现Promise相关方法
11实现发布订阅模式
12实现观察者模式
13 实现单例模式
14实现Ajax
15实现JSONP方法
16 实现async/await
17 基于Generator函数实现async/await原理
18实现ES6的const
19实现一个迭代器生成函数
20实现ES6的extends
21实现Object.create
22实现Object.freeze
23 实现Object.is
24 实现---个compose函数
25 setTimeout与setInterval实现
26实现Node的require方法
27实现LRU淘汰算法
28 框架相关
29数组相关
前端面试题整理版本
面试官:谈谈你对BFC的理解?
面试官:CSS如何画一个三角形?原理是什么?
面试官:css选择器有哪些?优先级?哪些属性可以继承?
面试官:介绍一下grid网格布局
面试官:元素水平垂直居中的方法有哪些?如果元素不定宽高呢?
面试官:如何实现单行/多行文本溢出的省略样式?
面试官:如果要做优化,CSS提高性能的方法有哪些?
面试官:深入理解设备像素、CSS像素、设备独立像素、DPR.PPI之间的区别与适配方案
面试官:说说flexbox(弹性盒布局模型)
面试官:深入理解CSS盒子模型
面试官:谈谈你对BFC的理解?
面试官:CSS3动画有哪些?
面试官:介绍一下grid网格布局
面试官:DNS协议及完整的查询过程
面试官:为什么说HTTPS比HTTP安全?HTTPS是如何保证安全的?
面试官:什么是HTTP? HTTP 和 HTTPS的区别?
面试官:如何理解CDN?说说实现原理?
面试官:如何理解OSI七层模型?
面试官:如何理解TCP/IP协议?
面试官:如何理解UDP 和 TCP?区别?应用场景?
面试官:GET和POST的区别及使用场景
面试官:说说HTTP常见的请求头有哪些?作用?
面试官:说说HTTP1.0/1.1/2.0的区别?
面试官:说说HTTP常见的状态码有哪些,适用场景?
面试官:说说TCP为什么需要三次握手和四次挥手?
面试官:说说地址栏输入URL敲下回车后发生了什么?
面试官:说说对WebSocket的理解?应用场景?
面试官:Date类:日期和时间处理
面试官:JS中的异步编程与Promise
面试官:JavaScript中的Generator函数与其在实现Async/Await的应用
面试官:JavaScript中的编码
面试官:JavaScript事件流:深入理解事件处理和传播机制
面试官:JavaScript修饰器:简化代码,增强功能
面试官:JavaScript对象
面试官:JavaScript数组
面试官:Javascript数据类型和类型转换
面试官:requestAnimationFrame:优化动画和渲染的利器
面试官:作用域和作用域链
面试官:函数上下文和this关键字
面试官:前端跨页面通信:实现页面间的数据传递与交互
面试官:原型和原型链
面试官:实现符合Promise/A+规范的Promise
面试官:异步的终极解决方案:async/await
面试官:执行上下文与闭包
面试官:深入理解Proxy
面试官:详解Cookie,Session,SessionStorage.LocalStorage
面试官:面向对象编程与Class
面试官:说说linux系统下常用的命令有哪些?
面试官:TS实战之扑克牌排序
面试官:函数
面试官:命名空间和模块
面试官:扩展类型定义
面试官:接口和类
面试官:枚举和泛型
面试官:泛型和类型体操
类型
逆变(Contravariance)
类型兼容:结构化类型
类型守卫
类型推断
类型系统层级
装饰器与反射元数据
解读TSConfig
面试官:说说你对TypeScript的认识?
面试官:说说flexbox(弹性盒布局模型)
面试官:说说Git常用的命令有哪些?
面试官:探索现代图片格式:从GIF到HEIF,优势与适用场景一览
面试官:Node性能如何进行监控以及优化?
面试官:如何实现jwt鉴权机制?说说你的思路
面试官:如何实现文件上传?说说你的思路
面试官:如果让你来设计一个分页功能,你会怎么设计?前后端如何交互?
面试官:Node文件查找的优先级与Require方法的文件查找策略
面试官:Nodejs中有哪些全局对象?
面试官:说说Node中的EventEmitter?如何实现一个EventEmitter?
面试官:说说你对Node。js的理解?优缺点?应用场景?
面试官:说说对Node中的Buffer的理解?应用场景?
面试官:说说对 Node中的Stream的理解?应用场景?
面试官:说说对Node中的fs模块的理解?有哪些常用方法
面试官:说说对Node中的process的理解?有哪些常用方法?
面试官:说说对Nodejs中的事件循环机制理解?
面试官:说说对中间件概念的理解,如何封装node中间件?
面试官:React中的key有什么作用?
面试官:React中组件之间如何通信?
面试官:React事件绑定的方式有哪些?区别?
面试官:React构建组件的方式有哪些?区别?
面试官:state 和 props 有什么区别?
面试官:super0 和 super(props) 有什么区别?
面试官:你在React项目中是如何使用Redux的?项目结构是如何划分的?
面试官:在react中组件间过渡动画如何实现?
面试官:说说React性能优化的手段有哪些?
面试官:说说React生命周期有哪些不同阶段?每个阶段对应的方法是?
面试官:说说React中的setState执行机制
面试官:说说 Real DOM 和Virtual DOM 的区别?优缺点?
面试官:说说ReactJSX转换成真实DOM过程?
面试官:说说React Router有几种模式?实现原理?
面试官:说说React diff的原理是什么?
面试官:说说React render方法的原理?在什么时候会被触发?
https://github.com/encode-studio-fe/natural_traffic/wiki/scan_material5

以上就是今天的全部内容,希望对大家有所帮助