校招web前端一二三面面经
去年秋招整理的面试复盘,给自己看的所以比较乱,大家将就看看~
字节一面:
1. 项目相关
2. 如何判断数组类型
3. 如何清空数组
4. Js的类型有哪些(基本类型漏了big number
5. 假设后端传了一个64位的大数,传到前端会发生什么问题?
6. Let arr = [1,2,3]
实现一个arr.sum()进行数组求和,注意调用方式和传参。
Function能否改成箭头函数?
再实现一个arr.uniq()去重
7. New的过程发生了什么
8. 讲一下作用域链
9. 一道关于this指向的代码题:
window.name = 'bytedance';
function A() {
this.name = 123;
}
A.prototype.sum = function(){
console.log(this);
return this.name+1;
}
let a = new A();
let func = a.sum;
func(); // 输出什么 return什么
如果想输出a对象要怎么做(call, apply),接着问call和apply的区别
实现a.sum(3) 返回this.name+3
10. Css的flex属性,flex: 1 0 auto 效果
11. Css的position属性
12. Web安全
13. 如果请求命中浏览器缓存,返回的状态码是多少,和304的区别
14. 浏览器的强缓存和协商缓存
15. 算法题(求连续最大数组和,优化
字节二面:
2. 如何判断数组类型
3. 如何清空数组
4. Js的类型有哪些(基本类型漏了big number
5. 假设后端传了一个64位的大数,传到前端会发生什么问题?
6. Let arr = [1,2,3]
实现一个arr.sum()进行数组求和,注意调用方式和传参。
Function能否改成箭头函数?
再实现一个arr.uniq()去重
7. New的过程发生了什么
8. 讲一下作用域链
9. 一道关于this指向的代码题:
window.name = 'bytedance';
function A() {
this.name = 123;
}
A.prototype.sum = function(){
console.log(this);
return this.name+1;
}
let a = new A();
let func = a.sum;
func(); // 输出什么 return什么
如果想输出a对象要怎么做(call, apply),接着问call和apply的区别
实现a.sum(3) 返回this.name+3
10. Css的flex属性,flex: 1 0 auto 效果
11. Css的position属性
12. Web安全
13. 如果请求命中浏览器缓存,返回的状态码是多少,和304的区别
14. 浏览器的强缓存和协商缓存
15. 算法题(求连续最大数组和,优化
视频面(40min)
1. 自我介绍
2. 实习期间的成长(软实力、技术层面)
3. Vue2升级到vue3的优势、响应式原理(Object.defineProperty, Proxy)
4. Js升级到ts的优势(类型定义
Flow也可以做类型检查,和ts有什么区别(不了解flow
d.ts后缀的文件有什么作用,构建的时候会打包进去吗?(不会,只做类型标识
5. 介绍自己参与度最高的一个项目(技术选型,技术难点及解决
项目相关:使用jszip进行打包,在浏览器进行还是服务端进行?哪个比较好
延伸:
怎么部署?云服务器+express
怎么访问网站?IP地址、域名、MAC地址的区别?
为什么DNS解析是返回IP地址而不是直接返回MAC地址(没答好
6. 代码题:实现一个Task类,实现链式调用,log打印,wait等待n秒后执行
Const task = new Task();
Task.log(1)
.log(2)
.wait(3)
.log(4)
.wait(2)
.log(6)
//todo
Class Task {}
1. 自我介绍
2. 实习期间的成长(软实力、技术层面)
3. Vue2升级到vue3的优势、响应式原理(Object.defineProperty, Proxy)
4. Js升级到ts的优势(类型定义
Flow也可以做类型检查,和ts有什么区别(不了解flow
d.ts后缀的文件有什么作用,构建的时候会打包进去吗?(不会,只做类型标识
5. 介绍自己参与度最高的一个项目(技术选型,技术难点及解决
项目相关:使用jszip进行打包,在浏览器进行还是服务端进行?哪个比较好
延伸:
怎么部署?云服务器+express
怎么访问网站?IP地址、域名、MAC地址的区别?
为什么DNS解析是返回IP地址而不是直接返回MAC地址(没答好
6. 代码题:实现一个Task类,实现链式调用,log打印,wait等待n秒后执行
Const task = new Task();
Task.log(1)
.log(2)
.wait(3)
.log(4)
.wait(2)
.log(6)
//todo
Class Task {}
三面:
1. 项目相关、遇到的困难2. Vue2到vue3的兼容性问题
3. Vue的组件通信方式
4. 说说你对前端的理解(这个问题也太大了..
5. 看过什么书?平常怎么学习前端的?
6. 看代码说结果
new Promise((resolve, reject) => {
reject(1);
}).catch(()=>{
console.log(2);
}).then(()=>{console.log(3)}, (data) => {console.log(data)});
console.log(4);
7. JSONP的原理和使用方式?有什么问题?
8. 还有什么其它的跨域方式?
9. 进程和线程的区别
10. 进程通信方式
11. 对cookie的理解,cookie最初被设计用来做什么的?
12. Cookie的same-site字段
13. http和tcp的关系
14. http状态码401、304
15. 304相关的请求字段
16. udp有哪些使用场景
电商业务hc充足,北/上/杭、前端/后端/客户端均有坑位~
投递链接:https://jobs.bytedance.com/campus/position?referral_code=BEK33RF 搜索电商业务
内推码:BEK33RF,可提供简历&面试辅导,面试进度跟进&反馈,欢迎私戳~