小伙伴新鲜出炉面试题目总结(含中大厂,已拿offer)
最近在找工作,现在已经接近尾声了,面了携程,美团,京东,比心APP,英语流利说,百度,携程,新核云,现在写一下面经,希望最近找工作的你们一路顺下去
英语流利说
一面
- 微前端描述下 
- 怎么协同开发 
- 注意事项 
- 2:场景问题 
- 2.1:两个请求并行发送,如果其中一个请求出错,就用默认值代替,怎么实现 
- 2.2:页面有两个相同的请求怎么复用 
- 3:react 生命周期 
- 4:react通信 
- 5:跨域通信有哪些 
- 6:http缓存 
- 7:懒加载 
- 8:commonjs 和 es module区别 
- 9:tree sharking原理 
- 10: loader 会 plugins区别 
- 11:防抖和节流区别,大概实现 
- 12: 了解哪些新技术 
二面
- 介绍一下项目亮点 
- 介绍一下微前端 
- 说一下npm包管理机制 
- A插件依赖D插件版本是1.0.1,B插件依赖D插件版本是1.0.2,C插件依赖D插件1.1.0,那么npm i 之后,下载了几个版本的D插件 
- HTTP常见的状态码 ,401 403分别是什么, 常见的请求头响应头有哪些 
- 说一下webpack配置,常用的loader、plugin 
- 场景题目 
if(a == 1) {
    console.log(a);
}
// 控制台会报错么
// 如果报错是什么类型的错误
三面
我面的三面基本没有技术面
- 介绍项目 
- 你充当的角色 
- 你平时是如何学习的 
- 对自己的规划 
- 别人怎么评价你的 
其实流利说我觉得挺好的,就是我的工资要低了,具体多少不说哈,这几家公司都是20K以上,流利说的hr给我的印象很好,一面的小哥哥声音也挺好听的,如果没有百度的offer就去流利说了,真的还很抱歉
携程
一面
- 介绍微前端 
- 乾坤框架怎么实现的沙盒机制 
- 手写一个单例模式 
- 手写一个发布订阅模式 
- 手写一个redux的compose函数 
- 手写一个组合继承 
- 垃圾回收机制了解么,介绍一下 
- 自定义hooks和函数有什么区别 
二面
- 事件循环输出顺序问题 
- 实现函数异步请求成功后就返回,失败后重试max次 
- 前端怎么埋点监控 
- hooks为什么不能写在if 语句里面 
- useCallback的实现原理 
- 怎么画1px像素线,逻辑像素,物理像素的概念 
- 自己写的mock服务是怎么实现的,为什么不在webpack里用相关插件 
三面
三面也是没问技术
- 公司是做什么的,介绍下公司产品 
- 你现在充当的团队角色 
- 你现在是一个管理者了,为什么离职了 
- 将来的规划 
携程面的是一个新的业务线,需要一段时间的996,但是携程本身不是996公司了,加班有加班费,并且携程面试完之后会有一个行测评测和英语口语评测,必须要过。
比心APP
一面
- 介绍下项目 
- 说一下微前端实现 
- 写一个Promise.all函数 
- 写一个发布订阅模式 
- 一道setTimeout事件循环的题目 
- 手写题实现电话号码隔位显示(3 4 4) 
- 算法题[0, 2, 3, 0, 5, 0, 0]将0全部移动到后面去 
二面
- 介绍下项目亮点 
- 说一下redux如何使用 
- redux源码介绍下 
- 你说你angular, vue, react都使用过,说一下三者的区别 
- 了解缓存么 大概讲一下 
- 解释下https 
- 介绍几个git常见的操作命令 
三面
- 介绍项目亮点 
- react通信是怎么样的 
- react-redux中connect怎么连接组件的 
- 为什么要离职 
- 你最擅长的是什么 
比心APP我觉得也非常不错,都是hr很给力,一面是一个小姐姐人挺好的,二面是leader人也挺好,其实比心是先面的,hr一直等到我百度面试完在和我谈工资,让我自己对比下,说实话非常抱歉
百度
一面
- 介绍一下微前端 
- 乾坤框架源码看过么 
- 写一个自定义hooks,useDiff 
- 数组去重方法越多越好 
- 写一个匹配邮箱的正则 
- 实现函数 - function repeat(s, count) {}
 repeat('s', 3) // 输出 ‘sss’
- 函数实现 
 // 正则匹配标签名 输出div p span
 <div>
     <p>
       <span></span>   
     </p>
     <span>
     </span>
 </div>
- 实现一个深拷贝 
- 实现函数统计字符串里面出现次数最多的字符 
- 有做过什么优化么 
二面
- 介绍下微前端 
- hooks常用的api有哪些 
- useState,useEffect,useRef,useMemo在存储数据方面有什么区别 
- hooks组件怎么向外传递方法 
- 写一个三列等距布局,越多越好 
- 写一个公共组件需要注意哪些 
- 写一个表单生成组件 
- 生成一个完整的组件 
- 表单填入的值,可以返回出去 
const config = [
    {
        type: 'input',
        name: 'name',
        key: 'name'
    },
    {
        type: 'select',
        name: 'work',
        key: 'work',
        options: []
    }
] 
<FormC config={config} />
- 你ts用的多么,说几个高级用法 
- 介绍下interface和type的区别 
三面
- 介绍下项目 
- 为什么要重构项目 
- 为什么要做微前端 
- 详细说一下机器学习做的事情 
- 你觉得AI智能给前端带来的变化 
百度二面是一位小姐姐,挺可爱的一位女生,百度的hr也是一位比较萌的小姐姐,对于平台和技术而言,最终选择的百度,百度好像react比较看重,其他的几个岗位基本也是招react
京东凹凸实验室
- 介绍下微前端实现方式,以及你们是怎么做的 
- 乾坤框架源码看过没 
- commonjs 和 es module区别 
 1:- // a.js
 module.exports = {};
 exports = {
 name: 'json'
 };
 // b.js
 const a = require('./a.js'); // 输出什么- 2: - // a.js
 module.exports = function a() {}
 // b.js
 // 在b中用es6 module语法怎么引入
- 介绍下浏览器缓存机制 
- webpack打包原理是怎么样的 
- webpack 插件写过没,介绍下原理 
- webpack5介绍下 
- 看你用过react介绍下fiber架构 
- esbuild知道么介绍下 
- 你用过vue,现在出了vue3.0介绍下 
- vue现在出了一个打包工具vite,介绍下为什么会比其他的打包工具快 
京东凹凸实验室这家给我感觉很好,我觉得这个部门基本就是搞研究的,一面完了之后一直没消息,问了之后就说还在评估,估计凉了,后面三个问题仅仅是群里面发了文章,但是只看了一遍没深入,扫了个大概
字节跳动
一面
- 介绍下项目,微前端实现 
- 介绍下https加密过程 
- redux原理 
- 第三方登录,如果让你去设计,你会怎么考虑 
- 介绍下浏览器和node的事件循环 
- 做了一道原型链输出问题 
- 做了一道setTimeout输出问题 
- 做了一道this.setState输出问题(异步和合并) 
- 实现一下promise.race 
- 实现一下task().eat().sleep(2000).eat().sleep(2000)函数 
- 判断链表有环但是空间复杂度是O(1) 
二面
- 介绍下项目 
- redux用的熟么,介绍一下源码 
- connect怎么处理组件的 
- context会有什么性能问题么 
- 实现防抖节流 
- 实现sum(1)(2, 3)(4)柯里化 
- 实现一个非树状结构转树状结构函数 
- 一个查找最长子字符串算法 
三面
- 介绍下项目 
- 微前端实现 
- 乾坤框架如何做到隔离 
- 实现一个String.prototype._trim函数 
- 实现一个reduce 
- 实现一个多个请求,并行和串行的函数 
字节三面面试官有点严肃,没发挥好,题目虽然都做出来了,但是花的时间太长了,面试官也没再问,最后问了我有什么规划,我以为过了没想到最后挂了,临门一脚有点遗憾,想面试字节的同学,一定多刷函数实现,算法(连续做一个月),源码理解
PS:
1:还有一家初创公司叫新核云,感觉还不错,最后也是过了的,但是没有去
2:美团一面过了,因为又需要请假,并且晚上有百度面试,就推掉了
最后
我是来自程序员交流指北的一阵风,一个把技术交流放在首位的前端交流群,群主是一个全栈萌妹子,有兴趣的可以私聊我进群
❤️爱心三连击 1.看到这里了就点个在看支持下吧,你的「点赞,在看」是我创作的动力。
2.关注公众号
程序员成长指北,回复「1」加入高级前端交流群!「在这里有好多 前端 开发者,会讨论 前端 Node 知识,互相学习」!3.也可添加微信【ikoala520】,一起成长。
“在看转发”是最大的支持
