字节跳动前端提前批一二三面凉经
一面
1.HTTP header有哪些字段&HTTP的方法有哪些方法
2.this指向的情况
3.事件处理
4.Vue双向绑定的原理,Vue的缺点。
5.垂直居中的方法。
6.localstorage 和 sessionstorage的区别
7.算法:合并有序数组
二面
1.HTTP2.0了解过吗?keep-alive是怎么回事。
2.vue构建过程。
3.前端保证实现秒杀的倒计时准确度
4.computed和watcher的区别
5.promise和async await的区别,
6.什么是闭包以及有什么应用
7.ES6新增的数据类型以及相应的应用场景(symbol map set weakmap weakset....)
8.js作用域
9.promise错误捕获的方式有哪些
10.浏览器缓存catch-control和expires,以及为什么catch-control优先级更高
11.编程题,问输出:
setTimeout(()=>{ console.log('log-timeout'); }, 0); process.nextTick(()=>{ console.log('tick') }) const promise = new Promise((resolve)=>{ console.log('log-promise') resolve('promise resolve'); }); (async () => { console.log('async start'); const str = await promise; console.log(str); })() promise.then(()=>{ console.log('log-promise1-then'); }); console.log('log-end');
三面
1.跨域的解决方法,CORS中非简单请求options 第二次跨域时是否还要发送。
2.实现JSONP
3.实现new
4.HTTPS加密过程
5.打开浏览器启动了几个进程
6.项目相关
总结
有些问题忘记了,所以不是很全。因为自己太菜了所以面试官出的题目整体难度不大,但是还是每一面之后都感觉要挂😂(三面确实也挂了),每一面的面试官态度都很好,不会的会尝试引导你,你真不会也不会为难,直接下一题了,但是对于你会的也会进行深挖。算法都不难,面试过程中感觉面试官比较注意一些知识的应用场景(项目经验太少很多都回答不上),基本上问的都比较基础,看牛客网的面经也学到了很多。希望大家加油,都拿到满意的offer!