小米前端一面凉经
9月27下午面的,全程47min,结束以后感觉面试官好像很不耐烦,心里已经知道凉了
28号下午就来感谢信了
- 问了些实习用的啥技术栈 
- 有做过小程序吗 
- 实习项目遇到什么问题,怎么解决的 
- 项目有什么性能问题吗?有优化项目吗?该怎么优化? 
- 提到了Tree Shaking,所以问了使用Tree Shaking会遇到什么问题 
- 为什么Tree Shaking基于ES6,不兼容CommonJS(我说了ES6是依赖预声明,CommonJS是延迟声明,被面试官质疑了) 
- 用过webpack吗,用过啥脚手架(说了cli、vite、gulp) 
- gulp和webpack的区别 
- flex: 0 1 100px;分别代表什么
- 介绍一下盒模型 
- 有了解过移动端的东西吗?(没了解过) 
- 用CSS实现等比例缩放的正方形的盒子(没搞懂到底想问适配还是啥) 
- 怎么实现图片懒加载 
- 怎么判断一个图片是否加载成功了? - 图片加载成功触发 - load事件,加载失败触发- error事件
- 怎么判断图片是否进入可视区?什么属性判断(当时想说 - getBoundingClientRect()的,竟然给忘了,难受)
- 防抖和节流的区别 
- 手写:实现节流 
- 什么是闭包,有什么应用场景,会造成什么问题,浏览器怎么做垃圾回收机制(我说了标记清除和引用计数,但是面试官问我还有别的吗) 
- 手写:实现深拷贝(有几个地方写错了,面试官让我优化优化,实在想不出了) 
- 代码题:(答错了QAQ) - var a = function () {} Object.prototype.b = function () {console.log("b")} Function.prototype.c = function () {console.log("c")} var f = new a() a.b() // b a.c() // c f.b() // b f.c() // 报错,f.c is not a function
- 算法题:括号字符串是否合法 
- tcp和udp区别 
- 未来的职业规划 
没有反问,面试官估计觉得我很菜不想给我反问的机会
#面试复盘##面经##小米#
 查看52道真题和解析
查看52道真题和解析