你们好,最近金三银四,今天分享一篇大厂前端社招面试经验的轻松好文,相信看完会有所收获。也欢迎点击下方卡片关注或者星标个人公众号前端公虾米前端
目前工做快四年,年后投了一波简历,这里整理了一下新鲜出炉的前端面经,须要的能够自取。vue
腾讯
一面
-
写一个 LRU 缓存函数 -
写个防抖和节流函数 -
大家服务是怎么部署的?Node Agent 作了什么工做? -
Grpc 的优缺点? -
http2 的相关特性? -
viewport 和移动端布局方案 -
实现一个 compose 函数 -
开发中有遇到过比较难定位的问题吗?Node 内存泄露有遇到过吗?
二面
-
react ssr 是在什么场景下作的? -
react ssr 双端怎么作构建的?区别在哪里? -
有没有作过同构组件?服务端和客户端怎么同步状态的? -
render 和 renderToString 的底层实现上的区别? -
客户端怎么处理 JS 事件失效的问题?客户端不从新加载 JS 的状况下怎么实现? -
作服务端渲染的时候有没有遇到过比较难的点? -
react ssr 和 ejs 性能的差别? -
服务回滚是怎么作的?上线流程是怎样的?k8s 回滚、拉取之前的镜像 -
webpack plugin 的原理是什么? -
plugin 中有异步请求会阻塞后面的 plugin 吗? -
作过哪些 webpack 的性能优化? -
hard-source-webpack-plugin 是怎么作缓存的?修改文件后会怎么样? -
parallel 的原理是什么?多个子进程怎么通讯? -
大家 webpack 是怎么作拆包的? -
服务端监控是怎么作的?服务有上报过什么指标? -
Node 服务怎么去定位 CPU 占用暴涨的状况?怎么去定位内存泄露? -
编写 grpc 服务和 http 服务的区别? -
作过哪些 react 相关的优化?函数组件怎么实现 shouldComponentUpdate? -
若是有一个很是大的 react 页面,我想优先渲染某一部分,这该怎么作? -
react 函数组件和 class 组件里面 state 的区别? -
react useEffect 对应 class 组件的哪些生命周期? -
前端的监控是怎么作的?除了 sentry 还作了其余异常处理吗?
三面
-
讲一下你作的比较复杂的项目?以及你在项目中担当了什么角色? -
你是怎么看待如今各类造轮子的? -
有一个一亿长度的字符串,怎么存储设计可让它更好去查询、修改? -
怎么优化 H5 让它能够在 300ms 以内打开? -
大家 WebView 加载通常耗时多久? -
大家为何从 Python 重构到 Node?好处是什么? -
你是怎么看待作后台管理系统的?不少人以为它没有难点,你以为呢?(问这个问题是由于我如今在作后台管理系统)
总监面(有点儿记不清了)
-
新加坡和深圳内网是怎么连通的? -
将来的职业规划是什么样的? -
对当前新的技术有了解吗? -
对客户端知识有了解吗? -
为何要离职?拒了,岗位不是很喜欢
蚂蚁
一面
-
React setState 怎么获取到更新后的值?异步函数中为何 setState 会当即更新? -
作过离线包吗?H5 离线包的原理?客户端根据什么拦截静态资源请求? -
JS Bridge 的原理?大家这套方案的s优缺点? -
怎么判断 webview 是否加载完成? -
怎么实现 App 头部和页面的背景渐变? -
PC 端作过比较有意义的项目? -
微前端子应用之间怎么通讯?有没有了解过业界的一些方案?
二面
-
大家部署的 Jenkins 是怎么作的? -
JS Bridge 原理?有没有安全漏洞? -
有没有作过和安全相关的?waf 主要作了什么? -
有没有作过埋点和性能上报相关? -
若是大家用一个第三方的上报库,但页面加载这个 JS 失败了,还想上报该怎么办? -
实现两个大数相加 -
实现 DOM 字符串转虚拟 DOM 对象(不能用 DOM 相关的 api) -
有木有作过你以为比较困难的项目?
三面
-
管理系统都作了哪些业务?有没有作一些提升开发效率的东西? -
经常使用的组件是哪一个?解决了什么问题? -
平时 Node 都用来作什么?怎么实现的? -
SSR 的实现原理是什么? -
项目中遇到的技术难点有哪些? -
你以为大家比 lazada 作得更好是哪些缘由?
四面(略)
五面(略)
拼多多
一面
-
有没有作过比较复杂的页面?携程的 React-imvc 作了什么? -
使用 Redux 的好处,以及和 Mobx 的区别 -
对 React 最新特性有了解吗?class 组件和函数组件的区别? -
useState 为何不能放到条件语句里面? -
实现一个 Promise.all -
React SSR 是怎么实现的? -
有用过代码规范相关的吗?Eslint 和 Prettier 冲突怎么解决? -
实现一个数组转树形结构的函数
二面
-
说几个你以为足够复杂的项目? -
你是怎么去作 React SSR 的? -
有没有作过性能优化相关的? -
实现一个深拷贝 -
实现一个二叉搜索树转链表的方法 拒了,不想去卖命
商汤
一面
-
在工做中,主要是作什么内容? -
有用过 lerna 吗?多个项目之间共用的东西怎么共享? -
讲一讲微前端是怎么作的?怎么独立部署?子应用通讯怎么作? -
webpack 构建流程是怎样的? -
webpack loader 和 plugin 的原理和区别? -
webpack 热更新原理? -
webpack 怎么作分包? -
作过 webpack 性能优化吗?有用过 rollup 吗? -
react-imvc 是什么?它作了什么? -
react 和 react-dom 的区别是什么? -
redux 和 mobx 的区别和优劣?用过 redux-saga 吗? -
react diff 的复杂度,以及 react diff 的原理 -
react class 组件和 hooks 的区别? -
什么是 TS 泛型? -
从输入 url 到页面展现通过了哪些步骤? -
讲一下重绘和回流 -
知道 BFC 吗?使用场景有哪些? -
怎么判断是否为数组? -
页面卡顿怎么去定位? -
数组有10万个数据,取第一个和取第10万个的耗时多久? -
有用过 canvas 相关的吗? -
JS 垃圾回收机制?怎么定位 Node 内存泄露问题? -
你是怎么理解前端的? -
工做中遇到过最难的问题?有没有什么让你自豪的项目? -
周末你都在作什么?学习前端的途径是什么?
其余公司面的差很少了,这个后续面试就都拒了react
字节
一面
-
tcp 和 udp 的区别和使用场景? -
quic 基于 udp 怎么保证可靠性? -
讲一下同源策略和跨域方案?CORS 的几个头部是什么? -
讲一下 react fiber? -
vue 双向绑定原理? -
redux 和 mobx 的区别和使用场景? -
typeof null?null instanceof Object? -
typeof 能够判断哪些类型?instanceof 作了什么? -
实现一个 bind 函数 -
求数组里面最大连续项的和 -
event loop
二面
-
怎么优化 h5 的加载速度? -
离线包怎么更新?怎么知道须要打开哪一个离线包? -
js bridge 通讯原理? -
怎么实现 h5 页面秒开? -
明明不是同一个语言,为何 js 和 native 能够通讯? -
怎么实现 js bridge 跨多个 app 共用? -
grpc 相比 http 的优点? -
rpc 的调用流程?前端怎么调用 grpc 的? -
为何要用 grpc? -
服务发现为何用 ip,而不用域名? -
怎么作 DNS 预解析? -
怎么实现移动端的布局? -
iOS 下软键盘输入框遮挡遇到过问题么?怎么解决顶不起来的问题? -
实现两个大数相加 -
求一个数组最大子项的和,要求这些子项在数组中的位置不是连续的 -
经常使用的 react hooks 方法 -
useState 怎么作缓存的? -
react fiber 是什么? -
怎么解决 useState 闭包的问题? -
useReducer 比 redux 好在哪里?
三面
-
作过哪些公共组件?DatePicker 怎么实现的?难点在哪里? -
组件封装有哪些原则? -
组件数据和 UI 怎么分离? -
有没有作过一些提升工做效率的东西? -
有没有了解过拖拽?以为它有哪些难点? -
有没有作过优化相关的?webpack 作了哪些优化? -
cache-loader 和 hard-source-webpack-plugin 的区别是什么? -
最近遇到的比较难的项目是什么?大家服务是怎么部署的? -
Puppeteer 能够用来作什么?
总结
面试挺累人的,天天下班后赶回家面试,有时候干脆找个会议室偷偷摸摸面试。面了将近一个月,目前还没挂过,但因为各类因素,又都拒了。。。如今又要开始新一轮的面试了,祝本身好运吧。webpack
本文分享自微信公众号 - 前端公虾米(gh_0b53c67e23b7)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。web