快手一面
四十分钟(含反问)
发个面经攒个好运!
1. promise输出题:
setTimeout(()=>{console.log(1)},0); console.log(2); new Promise((resolve)=>{ console.log(3) }).then(()=>{ console.log(4) }) console.log(5)
回答的:2 3 5 1;有个坑:promise是pending状态,不会执行then中声明的回调,故没有输出4
2. 问了js异步解决方案,探讨了xhr,fetch,axios,promise,async/await这些
3. css样式优先级;
4. 如果有一个低层级有二十个先择器,能覆盖高一层的一个选择器声明的样式吗;
5. 读过哪些书?
答:红宝书,Vue设计与实现,计算机网络黑皮书(其实不怎么会,就希望问点计算机网络);
问了Vue设计与实现
吟唱响应式原理那部分;十几分钟
6. 树形数组进行拍平
写了两种方法:
1. 取巧:通过Array.prototype.toString()方法直接取到一维字符串再使用split得到数组,对每一个元素再进行强制类型转换
2. 递归:经典方法;又加了个去重的需求,使用了set进行去重
7. 反问