还愿贴,本人是社招教育前端方向,面试前看了很多面经,对自己的准备也很有帮助,这里记录一下我的面试过程,希望可以帮到需要面试的小伙伴。
一面 (1h13min)
面试内容主要是基本知识考查和算法
题目:
1.实现一个sleep函数
async function sleep(time){ // 这里是实现 return new Promise((res)=>{ setTimeout(()=>{ res() },time) }) } console.log(1) await sleep(3000) console.log(2)
2.写出一个正则匹配出图片的后缀,匹配以.jpg或者.png结尾的链接
比如
var str='[https://happy.com/img/like.png](https://happy.com/img/like.png)' var reg=/\.(png|jpg)$/
3.看代码写结果
主要是看this绑定的问题
window.data=5 var foo={ data:6, click(){ console.log(this.data) } } div.addEventListener('click',foo.click) // 点击div写出控制台的打印值 // 如何输出5,如何输出6
4.数组乱序
考查洗牌算法
5.leetcode 找出数组中两个元素的和为target的组合
6.场景题,写一个组件实现如下功能
二面(50min)
主要是围绕简历上的项目进行提问,这里仅记录一些通用问题
1.tcp如何保证安全连接
2.dns查询过程,使用的协议
3.浏览器如何构建和渲染页面
4.算法题,找出数组中最大的连续子数组和
三面(1.5h)
算法和项目交叉着问,比较注重思维扩散
1.js实现带并发限制的调度器,其实就是使用promise限制并发
2.移动端适配方案
3.如何提升移动端用户的使用体验,让用户能更快的看到页面
4.算法,实现加法函数使得sum(2)(3)和sum(2,3)都输出5
5.找到二叉树路径和为n的路径
更新 2020.9.14 (已offer)
顺便记录一下时间线:一面 8.25 --->二面 8.27 --->三面 9.4 --->hr面9.6
9.9提交流水---> 9.11oc ---> 9.14邮件
全部评论
(9) 回帖