前端面经 - 字节、百度、网易、滴滴、知乎
前面面经没记录时间(忘记了~-~),2022就这样了,开摆
接着奏乐,接着舞~
网易有道一面(1个小时)
元能星泰一面(轻松过)
1、call,apply,bind的作用和区别
2、var、let、const的区别和作用
网易雷火一面(40分钟)
1、自我介绍
2、状态码304、403
3、强缓存、协商缓冲
4、浏览器内核
5、手撕lodash find方法
6、Typescript的类型Partial 、required
7、RN和安卓开发的区别
8、flex的三个属性(flex-grow,flex-shrink,flex-basis)
9、typeof 和 instanceof
typeof 1 // 'number' typeof '1' // 'string' typeof undefined // 'undefined' typeof true // 'boolean' typeof Symbol() // 'symbol' typeof null // 'object' typeof [] // 'object' typeof {} // 'object' typeof console // 'object' typeof console.log // 'function' typeof arguments // 'object'
10、React中的Context
滴滴一面(时长1个半小时)
全程手撕代码,多考察代码能力
第一部分
1、手撕promise.all 方法
2、手撕深拷贝
3、手撕检测原型链
第二部分
css以及一些打印输出函数(较简单,略)
第三部分 算法
二分查找
反问:
1、项目组用的是什么技术栈
2、React中的fiber tree、Babel在项目中有无使用,主要是解决什么问题
3、对我的建议和评价
丁香园
一、笔试
1、什么是纯函数
2、promise.all 的作用
3、parseFloat、toFixed方法
4、哪些css属性会引起重排(回流)、重绘
5、数组删除和增加的四个方法
二、一面
1、flex的三个属性名
2、简述下promise
3、promise.all 是串行还是并行的 并发操作、串行执行
4、箭头函数的this指向
5、防抖和节流
无反问环节
第四范式一面(1小时)
1、项目难点
2、js中的数据类型
3、引用数据类型和基本数据类型有什么区别
4、引用数据类型的console.log()
5、对剩余参数的处理有了解吗 (组合与管道)
6、解释下arguments
7、了解Map吗
8、Map和Object有什么区别
JS 项目中究竟应该使用 Object 还是 Map? - 知乎 (zhihu.com)
9、compose函数手撕
反问:
1、项目组用的是什么技术栈
React + Hooks + Nestjs
2、如果用React,项目一般用的React的类式编程还是函数式编程?
类式编程比较少(老项目会用),现在基本函数式编程
字节跳动,data一面(50分钟)
2、怎么学习前端
3、Taro为什么能构建小程序
4、虚拟dom的作用
5、事件循环
6、宏任务、微任务有哪些
7、script标签中defer和async的区别
8、手撕发布订阅
9、最近关注的前端社区的技术
反问:
1、项目组用的是什么技术栈
React + Hooks + Nodejs 提供数据服务
2、建议和评价
深度欠缺,原生js不熟练
网易有道一面(8.25 25分钟)
1、怎么学习的前端(因为我24届,比较好奇)
2、项目难点,怎么解决
3、React的可控组件和不可控组件
4、promise的api
5、js的基本数据类型
6、数组的方法
7、push返回什么
反问:
1、面试流程
2、评价和建议(感觉我都知道,但有点紧张)
知乎日常(1个小时 OC)
1、flex实现三栏布局
2、实现一个元素的隐藏(答了4种)
3、实现垂直居中(答了3种)
4、数据类型(顺提const 引用打印)
5、Array的方法,哪些不改变原数组
6、异步输出题
7、React dva
8、React 如何命中路由
9、git rebase 和 git merge 区别
反问:
1、所在业务、部门
2、评价
百度商业智能一面(1个小时)
1、对React Hooks redux dva 的理解
2、p 和 span 的区别
3、src 和 href 的区别
4、scrpit的 defer 和async 的区别,执行顺序
5、display none 和 visible hidden 的区别(浅提重绘)
6、this的理解
7、作用域的理解
8、call apply bind 的区别
9、老规矩 浅拷贝题、异步输出题
var b = 20 function fn(){ var a = 10; function c(){ console.log(a + b) } c() } b = 200 fn() //210 答错了,丢人
10、算法题
-
股票最大利润
- 忘记了(中等题)