9月面试几家前端岗,发现竞争虽然大,但绝大部分人都很水!!!

Source

先不说自身技术水平如何,面试一个中大厂的时候一定要刷近期的面经,和自己的技术栈、项目结合,八股这部分理念是必须要准备的,例如:

JavaScript 核心:异步编程、ES6+ 新特性、闭包与作用域、手写常见函数

框架类:

1.vue.js:Vue 3、Composition API 的优势与核心用法、响应式原理、性能优化等

2.react.js:Hooks、状态管理、新特性与优化、

工程化与构建工具:Webpack/Vite、微前端的概念、价值以及 qiankun 等框架是如何实现样式隔离、JS 沙箱、应用间通信的

场景题:面试官会描述一个真实业务场景,考察你的解决问题的思路和能力。例如:

  • “如何实现一个大文件上传(支持断点续传、秒传)?”
  • “如何设计一个前端监控系统?”
  • “如何统计用户在线时长?”
  • “如何实现一个完整的前端灰度发布方案?”

以上内容:https://github.com/encode-studio-fe/natural_traffic/wiki/scan_material5

场景题今年问的居多,整理了一些大厂会问的:

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里面sideffects厘性的作用是啥【必会】

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.介绍-下 requestlIdleCallback 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项目中,如何使用nodemodules里面定义的全局类型包到自己项目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.单点登录是如何实现的?

后面也整理了一些框架类的面试常问

react:

20.setState是同步,还是异步的?

21.简述下React的事件代理机制?

22.简述下React的生命周期?每个生命周期都做了什么?

23.为什么不能在循环、条件或嵌套函数中调用Hooks?

24.说说你对useContext的理解

25.说说你对useMemo的理解

26.说说你对自定义hook的理解

27. 如何让 useEffect 支持 async/await?

28.我们应该在什么场景下使用useMemo和useCallback?

29.说说你对ReactHook的闭包陷阱的理解,有哪些解决方案?

30. React19新特性

31.React中,怎么实现父组件调用子组件中的方法?

32.你常用的 React Hooks 有哪些?

33.说说你对useReducer的理解

34.useMemo 和 useCallback 有什么区别?

35.怎么在代码中判断一个React组件是class component还是functio...

36.useRef / ref /forwardsRef 的区别是什么?

37.useEffect的第二个参数,传空数组和传依赖数组有什么区别

38.如果在useEffect 的第一个参数中return了一个函数,那么第二个...

39.讲讲 React.memo 和JS 的 memorize 函数的区别

40.怎么判断一个对象是否是React元素?

41.说说对 React 中Element、Component、Node、Instance 四个概念...

42.React 和Vue 在技术层面有哪些区别?

43.实现useUpdate方法,调用时强制组件重新渲染

44.taro的实现原理是怎么样的?

45.taro 2.x和 taro3 最大区别是什么?

46.单页应用如何提高加载速度?

47.React 中的 ref有什么用?

48.react-router里的<Link>标签和<a>标签有什么区别?

49.说说你对React Router的理解?常用的Router组件有哪些?

50.说说React Router有几种模式,以及实现原理?

51. 使用 useState (const [test, setTest] = useState([]))时,为什么...

52.实现个useTimeout Hook

53.react 中怎么捕获异常?

54. 最大子序和

55.说说https的握手过程

56.HTTP2中,多路复用的原理是什么?

57.说说你对”三次握手”、“四次挥手”的理解

58.如何确保你的构造函数只能被new调用,而不能被普通调用?

59.为什么推荐将静态资源放到cdn上?

60.说说React事件和原生事件的执行顺序

61.Vue2.0为什么不能检查数组的变化,该怎么解决?

62.说说Vue页面渲染流程

63.请简述==的机制

64.怎么做移动端的样式适配?

65.说说sourcemap的原理?

Vue类面试框架题

20.如果使用Vue3.0实现一个Modal,你会怎么进行设计?

21.Vue3.0中Treeshaking特性是什么,并举例进行说明?

22.Vue3.0 所采用的 Composition Api 与 Vue2.x 使用的 Options Api 有...

23.Vue3.0性能提升主要是通过哪几方面体现的?

24.Vue3.0的设计目标是什么?做了哪些优化?

25.你是怎么处理vue项目中的错误的?

26.Vue项目如何进行部署?是否有遇到部署服务器后刷新404问题?

27.Vue项目中如何解决跨域问题?

28.Vue怎么实现权限管理?控制到按钮级别的权限怎么做?

29.大型项目中,Vue项目怎么划分结构和划分组件比较合理呢?

30.Vue项目中有封装过axios吗?怎么封装的?

31.说说vue中的diff算法

32.什么是虚拟DOM?如何实现一个虚拟DOM?说说你的思路

33.说说你对Vue中 keep-alive 的理解

34. Vue.observable是什么?

35.说说你对slot的理解?slot使用场景有哪些?

36.说说你对vue的mixin的理解,以及有哪些应用场景?

37.Vue中的$nextTick有什么作用?

38.Vue组件间通信方式都有哪些?

39.Vue中组件和插件有什么区别?

40.为什么Vue中的data属性是一个函数而不是一个对象?

41.说说你对Vue生命周期的理解

42.Vue实例挂载的过程中发生了什么?

43.谈谈对Vue中双向绑定的理解

44.Vue 模板是如何编译的

45.说说 Vue 中 CSS scoped 的原理

46.说说你对渐进式框架的理解

46,说说你对渐进式框架的理解

47.Vue中的 v-show 和v-if有什么区别

48.Vue3.0里为什么要用 Proxy API 替代 defineProperty API?

49.SSR是什么?Vue中怎么实现?

50.vue的祖孙组件的通信方案有哪些?

51.如何打破scope对样式隔离的限制?

52.Scoped Styles为什么可以实现样式隔离?

53.vue中怎么实现样式隔离?

54.created 和mounted有什么区别?

55.Vue是怎么把template模版编译成render函数的?

56.v-model的原理是什么样的?

57.说说Vuex 的原理

58.Vue中给对象添加新属性时,界面不刷新怎么办?

59.Vue3有了解过吗?能说说跟Vue2的区别吗?

60.自定义指令是什么?有哪些应用场景?

61.说说vue中,key的原理

62.Vue常用的修饰符有哪些?分别有什么应用场景?

63.vue的响应式开发比命令式有哪些优势?

64.vue 中$route 和$router有什么区别?

65.React 和Vue在技术层面有哪些区别?

66.单页应用如何提高加载速度?

67.为什么Vue中的v-if和v-for不建议一起用?

68.vue3中怎么设置全局变量?

69.刷新浏览器后,Vuex的数据是否存在?如何解决?

工程化内容

1. package.json 文件中的 devDependencies 和dependencies 对象有什...

2.webpack 5的主要升级点有哪些?

3.说下Vite的原理

4.与webpack类似的工具还有哪些?区别?

5.说说如何借助webpack来优化前端性能?

6.说说webpackproxy工作原理?为什么能解决跨域?

7.说说webpack的热更新是如何做到的?原理是什么?

8.面试官:说说Loader和Plugin的区别?编写Loader,Plugin的思路?

9.说说webpack中常见的Plugin?解决了什么问题?

10.说说webpack中常见的Loader?解决了什么问题?

11.说说webpack的构建流程?

12.说说你对webpack的理解?解决了什么问题?

13.webpackloader 和 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的热更新是如何做到的?说明其原理

27.如何提高webpack的打包速度

28.如何用webpack来优化前端性能

29.webpack的构建流程是什么

30. webpack的Loader和Plugin的不同

31.webpack有哪些常见的Plugin

32. webpack、rollup、parcel优劣

33.Webpack中 loader的作用是什么,以及常用loader有哪些

34.谈谈你对Webpack的认识

因为篇幅原因不一一展示了,9月是今年找工作最快的时候,希望还是不要浪费自己的时间,如果你能力强的话,早就找到工作了。

以上内容:https://github.com/encode-studio-fe/natural_traffic/wiki/scan_material5

最后祝每个刷到的都会以一个神奇的方式,入职一个薪资嘎嘎高,事情嘎嘎少的公司!!!!