小米前端一面凉经
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区别
未来的职业规划
没有反问,面试官估计觉得我很菜不想给我反问的机会
#面试复盘##面经##小米#