去年秋招整理的面试复盘,给自己看的所以比较乱,大家将就看看~       字节一面:    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. 算法题(求连续最大数组和,优化        字节二面:   视频面(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. 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有哪些使用场景        顺便夹带下私货~字节提前批7.31截止,还没上车的同学抓紧时间冲冲~提前批不计入秋招次数,相当于多一次投递机会~ 电商业务hc充足,北/上/杭、前端/后端/客户端均有坑位~ 投递链接:https://jobs.bytedance.com/campus/position?referral_code=BEK33RF 搜索电商业务  内推码:BEK33RF,可提供简历&面试辅导,面试进度跟进&反馈,欢迎私戳~
点赞 14
评论 1
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务