从九月份开始慢慢投慢慢面,中间受到不少打击,这么久面试也让我产生了发展第二道路的想法,想过考公、考教资等等,发现没啥方向是轻松的,所以还是坚持了下来,以下附上这段时间的面经
1、哔哩哔哩
1、js数据类型
2、如何判断数组
3、首屏优化,fcp等
4、图片不同格式是否了解
5、redux、zustand等状态管理是否有了解
6、深浅拷贝区别和如何实现深拷贝
7、DNS解析
8、跨域是什么
9、为什么浏览器要做跨域(同源)
10、H5中如何选择多个图片
11、如何做的去除重复请求
12、还有什么方案防止请求重复
13、对next.js的理解
14、对ssr和csr的区别和理解
15、常用hooks
16、事件循环
17、qiankun底层如何实现的各种隔离,bem
18、htmlEntry的js加载策略
19、事件源
他们主要做react+next,虽然都用过但是不是主学方向,所以我说react和next学的一般就开始划水面了
2、网易
1. 数组去重考察了indexOf的使用
2. 判断回文字符串的方法,考察split,reverse,toString等
3. 事件循环,判断代码的输出
4. Positon的各个属性值和区别作用
5. 文本太长,让他不显示,显示省略号是哪个属性
6. 垂直水平居中的方法
7. 如果有两个元素,在父元素里面,想让他上下排列居中怎么做
8. v-for干嘛的,他的key注意什么,可以是随机数或者随机数+时间戳吗(不能,拖拽的时候会出bug)
9. 请求预检
10. Post的content-type支持什么请求数据格式
11. 请求的状态码
12. 403主要是什么情况
基础三件套的轰炸,项目几乎没问,起手三件套基础轰炸,然后问计网,基础很重要啊,下来狂补mdn
3、吉比特
1. vue和react的区别
2. React的状态管理器以及区别
3. Qiankun的隔离机制
4. Vue3的scoped如何实现的隔离呢
5. Vue的生命周期,父子组件的生命周期
6. Computed和watch,哪个是有缓存的
7. 组件通信
8. Vue中的nexttick
9. Vue的元素哪个生命周期之后加载出来的,如果更新了一个dom元素的内容,在什么时候可以拿到他的数据呢
10. 箭头函数和普通函数的区别
11. a对象里面有b,b里面有c,c是一个函数,通过a.b.c()去调用,这里的this指向谁,如果c是箭头函数那this指向谁,箭头函数上一个的this是怎么判断上面一级的
12. 解释一下原型链
13. Const、let、var的区别
14. Const一个对象,可以修改他的属性吗,如果const a对象,const b对象等于a,修改b会影响a吗
15. 深拷贝有哪些方式
16. =和浅拷贝有什么区别,浅拷贝是什么
17. 事件循环
18. Js的继承
八股开大会,面完第二天就感谢了,面试官边问边笑,感觉在嘲笑我(bushi
4、字节
1. 实习期间的业务,学到了什么
2. 项目使用微前端的原因
3. Qiankun的隔离方案
4. Iframe的重大隐患安全问题
5. Qiankun的打包配置
6. 简历的fcp性能指标从什么时候开始算的,使用的什么回调函数或者api来测算得到的
7. 生命周期
8. 如何优化的fcp,用了哪些措施
9. Webp新格式图片的兼容性如何处理
10. 做了哪些优化分别能优化多少时间
11. Webp压缩之后和png等相比文件格式少了哪些字段
12. 具体项目的拷打(主要是大模型调用的方面)
13. Next向前端推送数据,如何防止xss呢
14. 对ts的理解,是否熟悉
15. 闭包在项目中的运用(私有化,函数工厂,柯里化)
16. 柯里化具体有什么业务场景,和promise.then去调用有什么区别
17. 防抖节流如何实现
18. Settimeout为什么不准时,如果延迟很长一般是因为什么,如何让他准时
19. 节流一定是只执行第一次吗,他具体的执行机制是怎样的
20. requestAnimation机制,是否一定准时,为什么不阻碍其他任务执行
21. Promise如何解决的回调函数地狱
22. Promise有哪些状态,状态流转对应什么方法,then和catch分别对应什么(catch是语法错误对应的)
23. Promise的状态不可变如何实现的
24. Await可以顶层调用吗,新的es模块是哪个版本的es模块可以顶层调用
25. Reactive和ref区别,在template模板中ref声明的对象怎么去调用,还是.value吗(直接使用,不需要.value了)
26. 通过什么来知道组件是否加载异常了
27. Nexttick干嘛的
手撕超大数相加
面了一个半小时依旧无法战胜(认识的人投简历最好别商量着一起投吧,容易撞)基础+项目+实习全方位拷打,重视项目和实习中的实践,总结就是——了解技术原理,做出区别,技术选型,实际运用,效果实现,技术亮点。一体化的考察,所以平时干活还是要把具体的实现好好记一记
5、滴滴
1、讲一下实习的具体业务的流程
2、开发时的分支如何分配的,暂存区等几个区的区别,互相如何转化,reset和checkout有什么区别,如果遇到bug如何管理分支
3、ts类型,interface和type区别
4、js判断数据类型的方法
5、react常见hooks
6、useRef和useState的区别,useRef数据更新会触发渲染吗,setState5次会渲染几次,什么机制实现只渲染一次
7、useRef和useState底层如何实现的
8、react中的父A,子B1、B2如何通信
9、eventBus是什么,如何设计自己写一个eventBus,.on方法你想怎么实现
10、http请求是什么,请求头和请求体分别有什么字段
11、常见状态码,具体讲一下304
12、跨域是什么,一个js脚本使用三方库,有跨域吗,为什么能使用
13、有哪些处理跨域的方法
手撕
1、186****9876电话号码的转换
2、二叉树前序遍历(递归和非递归)递归会爆栈吗,代码中如何解决,递归和非递归底层处理方式是否一样,尾调用是什么,为什么不会爆栈,为什么性能更好
依旧滴滴
1、上一段离职原因
2、如何看待学校课程,如何自学
3、git是否熟悉使用
4、打印二叉树最右侧节点,递归和非递归
5、反转单链表,k个一组反转链表
6、爱奇艺
1、react的虚拟dom
2、React中的key有什么作用
3、setState是同步还是异步
4、箭头函数和普通函数的区别
5、Promise的状态
6、水平垂直居中的方法
7、动画和过渡
8、函数式组件和类组件的区别
9、React的生命周期
10、Var和const和let
11、盒模型
12、媒体响应
13、Rem
14、实习的拷打
15、200状态码和304状态码
16、Jsx具有响应式的加减的函数式组件
17、V-if和v-show有什么区别
18、Vue3的生命周期
技术栈不匹配,感谢信第二天就来了
7、小红书
1. 讲一下实习和项目中遇到的难点
2. 提到的bug和难点怎么解决的
3. 项目中Usecallback的使用,具体原理等
4. 在项目中的静态json文件如果有文本切换(同一个组件的同一种语言)有什么动态切换的方案,将文本写在项目的json文件每次都需要重新部署,有其他更好的方法吗
5. 遇到语言切换之后文本过长怎么尽量适配文本
6. 如果还需要切换样式要怎么做,直接类名切换耗性能,有什么好的方案
7. 一个实习业务的详细拷打(主要是针对当前方案提出问题,想办法去解决和当初为什么这么选择技术方案)
8. Tcp和udp的具体区别,三次握手和四次挥手的过程
9. http2.0和3.0
10. 浏览器输入url的整个过程
11. 事件循环
12. Commonjs和es的区别
13. 怎么解决跨域
14. 浏览器安全的内容
15. 前端的打包工具,区别和使用场景
16. Vue的通信方式
21. Provide和inject的依赖注入是什么
手撕:第start和end之间的链表节点反转
拷打很全面,问得也比较深,提到的实习和项目会追问,最大的收获是前期技术选型要充分考虑,开发时多想想优化和极端情况等
依旧小红书
1. 跨端的前端页面布局适配
2. em,rem,vw,vh等
3. 对于不同的设备,其宽高不同,在使用rem时以什么方式去设定根元素的基准长宽等
4. 说一下flex,flex:1,对应哪三个属性值,默认是什么,有什么作用,如果分开写的顺序是怎样的
5. 对原型和原型链的理解,对象原型创建的时机
6. 遍历对象的方法,for in遍历对象如何确定当前属性是这个对象的
7. 防抖节流的理解和对应的使用场景
8. https的加密过程,对称加密和非对称加密,为什么不一直用对称加密或者为什么不一直用非对称加密(非对称性能不好,对称可能被窃取)
9. 数字证书是什么,如何通过的数字证书验证真伪,去哪里验证的数字证书,为什么
10. Vue如何声明响应式数据,有什么区别,哪一个可以通用,响应式数据和原来的还是同一个吗
11. Proxy是什么,vue如何用他做成的响应式
12. 有没有什么没问到但是你觉得你掌握比较好的地方
13. 手撕版本号比较(1.10.1>1.1.1)
14. 除了+还有什么字符串转数字的方法,parseInt了解过吗,入参是什么,返回是什么,默认返回是什么
面试官很耐心,问问题之前甚至会自己说一下运用场景知识点再问,问得较底层,需要说明具体区别等
总结:这么多面试下来,最大的感受就是基础很重要,尤其是实际业务的代码方案积累,三件套的使用,不是随随便便背八股的事情,要自己手敲代码提高熟练度,还有就是项目和实习干活要多问自己为什么这么做,可能会遇到什么问题,如果遇到了问题如何解决,最后祝大家早日oc
全部评论
(3) 回帖