字节前端 一面凉经 被拷打一个半小时

  1. 介绍一下自己
  2. 讲项目的时候提到了文件分片上传,提问分片上传怎么做的(回答的不好,罗嗦了半天,最后应该说清楚了)
  3. 开始单点提问,react项目的路由高阶组件的目的(回答用token鉴权)
  4. 追问,token为什么要保存在localStorge,为什么不用cookie(没用过cookie,寄)
  5. 追问,cookie和localStorge的区别,各自有什么生命周期(答不知道,寄)
  6. 前端存储,indexDB了解吗(答不知道,寄)
  7. localStorge读取是同步还是异步(答同步)
  8. localStorge存储的内容,限制(内容答JSON,准确是JSON字符串,寄;限制一下没想起来,后面补充5M)
  9. 项目中服务器返回的MD或HTML格式的文章前端如何展示(直接说的用插件解析md,html经过插件处理再渲染)
  10. 追问,react如何把一段字符串变成DOM结构插入文档中(答双反引号模板字符串,寄,面试官说用dangerouslySetinnerHTML,然后我说更熟悉vue,求放过)
  11. 另一个项目(小程序),提问状态栏高度如何计算(答有接口,额外说了topBar怎么计算)
  12. 面试官说他不了解小程序,问webView里面的一些css属性可以设置安全区,问小程序有没有类似的(答不知道,寄)
  13. 追问,做小程序时怎么做的自适应(用的rpx,记错了,说的rem,后面都把rem当成rpx说了,连续寄)
  14. 追问,rem有什么用,怎么用的(反应过来不是rem,说做项目用的不是rem,是什么单位忘了,寄)
  15. 追问,讲一下常用的单位(说了px,vh,vw,rem,四个,面试官说还有em,没提到rpx,还是没想起来,寄)
  16. rem和em的区别(没用过,寄)
  17. 小程序海报生成怎么做的(答后端返回的图片,前端展示图片,用户可以选择是否下载,说了怎么做的自动下载)
  18. HTTP缓存有哪些(不知道,只答了能加速首次加载白屏,寄)
  19. CDN了解过吗(不知道,说听说过,可以用来加速,寄)
  20. 页面加载白屏的衡量指标,怎么让页面加载更快(指标不知道,寄;加载更快答了打包、图片之类的东西)
  21. onLoad,onDomReady了解过吗,具体执行时机(不知道,寄)
  22. var,let,const的区别(答作用域相关,var可以做变量提升)
  23. 追问let在函数中声明的变量外面可以访问吗(答不可以)
  24. 追问用let造成暂时性死区,讲一下(没听说过,寄)
  25. 提示上一个问题,用var可以先访问再定义,用let会怎么样(答报错,追问报什么错,不知道,寄)
  26. 追问,用typeof访问一个暂时性死区的变量会怎么样(答不知道,也许是报错,面试官说和刚才一样)
  27. 箭头函数和普通函数的区别,this指向分别是什么(没答好,寄)
  28. 说一下作用域和作用域链(应该没答错)
  29. 说一下函数执行完毕了之后它的作用域会怎样(答销毁)
  30. 追问,哪些情况不能销毁(答闭包)
  31. 追问,哪些情况会形成闭包(答函数返回函数,第一个函数的变量)
  32. 追问,为什么闭包不能销毁(答垃圾回收机制,标记清除和引用计数,说了一下标记清除的逻辑)
  33. 哪些场景会使用闭包,用过哪些闭包(答实现私有变量,节流,防抖)
  34. 说一下防抖和节流的实现思路(答了,不知道说没说的)
  35. 浏览器的其他api,面试官在聊天栏发了两个(不知道,寄)
  36. 连续发了两次请求,遇到过吗,会造成什么问题(答会导致保存了最后达到的数据,可能是先发的)
  37. 追问,如何解决(说了时间戳,面试官说用请求相关,我就说上个请求没回应就阻塞,面试官说只保留最后一个就行,寄)
  38. css定位分为哪些(答了四个,绝对、相对、固定、弹性)
  39. 详细说一下四个定位的区别和用途(没答好,小寄)
  40. 介绍一下盒模型(答的内容、内边距、边框、外边距,面试官让说详细一点,不知道,寄)
  41. border-box有哪些值(应该是面试官说错了,我说只知道box-sizing: border-box,寄)
  42. bfc块级格式化上下文了解吗(不知道,寄)
  43. css动画做过吗(答只做过简单的过渡效果,寄)
  44. 帧动画了解过吗(不知道,寄)
  45. v-show和v-if,说一下区别(答v-show是设置display,v-if是设置是否渲染)
  46. vue组件中的data为什么是函数(答作用域,避免两个组件冲突,好像错了,寄)
  47. vue的nextTick原理(答用Promise做异步,好像错了,寄)
  48. nextTick是宏任务还是微任务(答微任务)
  49. promise是宏任务还是微任务(答宏任务,应该错了,寄)
  50. 宏任务有哪些(答定时器和计时器)
  51. react对hooks的了解(答了useState,useEffect,useMemo)
  52. useState用来做什么(答定义响应式数据)
  53. 为什么hooks不能出现在if语句中(不知道,寄)
  54. 如何进行缓存(答了useMemo)
  55. 追问react.memo用来做什么,具体做了什么(没答好,寄)
  56. reactRouter基于什么原理、API实现的(不知道,寄)
  57. react中的fiber了解吗(不知道,寄)
  58. react中的ssr了解吗(不知道,寄)
  59. 图片懒加载怎么做(答错了,面试官让答加载时机,是视口中有才加载,寄)

然后让做两道编程题
第一道是给数字加逗号,例如1234567890转化成1,234,567,890(做出来了,问有没有其他思路,面试官说可以用浏览器API的toLocalString)
第二道是用Promise写任务队列(没写出来,寄了)

反问:字节用的什么技术栈(面试官说是react比较多)

人生中第一次面试,直接被狠狠拷打,输完了

#我的失利项目复盘##面试题刺客退退退##面试中的破防瞬间##如何判断面试是否凉了##哪些公司面试官让你印象深刻?#
全部评论
我勒个八股盛宴?😂
10 回复 分享
发布于 01-24 18:03 广东
token存在cookie比较好,因为可以设置secure httponly防止xss攻击。后端用setcookie配置token,由于cookie跨域不共享,还需要在前端设置withcreditiral(不会拼了)为true。后端设置cors的origin不能为*️⃣
2 回复 分享
发布于 01-24 22:34 山东
加起来快抵得上我两面了
1 回复 分享
发布于 01-24 22:14 上海
感觉是寄中寄了,字节一面都过不去,那场面试毁了我的大厂梦
点赞 回复 分享
发布于 01-24 17:59 四川
问的八股还算正常的,可以多巩固一下css,js的基础功。面试官能问这么多问题证明还是对你比较感兴趣的,加油
点赞 回复 分享
发布于 01-24 19:39 四川
这面试难度确实夸张,不过好些常规八股你也没答出来,应该是准备不充分吧,字节感觉兄弟你是困难了,面评影响太大了,还好我字节两次约面我全拒了
点赞 回复 分享
发布于 01-24 19:40 北京
很多常规八股,感觉你是没怎么准备好就面试了
点赞 回复 分享
发布于 01-24 22:06 广西
追问,如何解决(说了时间戳,面试官说用请求相关,我就说上个请求没回应就阻塞,面试官说只保留最后一个就行。看不懂求大佬讲讲
点赞 回复 分享
发布于 01-24 22:34 山东
这个时候能约到面试很强了,我ssob全都已读不回
点赞 回复 分享
发布于 01-24 22:37 山东
佬是什么部门
点赞 回复 分享
发布于 01-25 11:33 广东
我嘞个豆
点赞 回复 分享
发布于 01-27 16:25 福建
佬react大厂必须学吗?只会vue捏
点赞 回复 分享
发布于 01-30 17:36 海南
楼主加油感谢分享
点赞 回复 分享
发布于 02-01 14:38 四川
我去这么多太离谱了
点赞 回复 分享
发布于 02-18 10:50 江苏

相关推荐

02-19 13:08
已编辑
西南石油大学 前端工程师
Timeline:一面        2025-02-14  14: 00    当天 15: 30 通过二面        2025-02-17  11: 15    当天 15: 10 通过三面        2025-02-18  14: 00    当天 14: 50 通过hr面        2025-02-18  17: 00    当天通过oc            2025-02-19  10: 45呃啊啊啊啊啊啊啊,对比一面难度飙升二面主要过程:1. 自我介绍2. 首屏优化有哪些方法(tree-shaking  http2  懒加载  gzip  SSG ......),    看的是哪个指标(LCP),LCP具体是怎么计算的(完全没了解)3. 业务组件和基础组件的区别(??根本不知道),如何保证组件的稳定性(希腊奶,应该是指组件测试)4. 拷打 css: - 重绘重排(浏览器渲染原理,结合 visibility: hidden 和 display: none) - flex 垂直布局如何使得三个子盒子间隔 10px(不是 margin / space-between,叫我去了解一下,应该是 row-gap) - position: sticky(没用过),position 和包含块5. 拷打 vue: - vue2 和 vue3 有什么区别(setup,defineProperty 和 proxy) - vnode 和实际 dom 有什么区别,为什么要用 vnode(为了高效 diff 和跨平台支持包括 ssr),为什么不直接修改 dom(因为早期对 signal 理念实现不够彻底,vue3.6 的 vapor mode 正在改进,我的回答不一定对哈) - computed 的更新机制是怎么样的(脏值检测懒更新),使用时和 watch 有什么区别(问的就是依赖多的时候用 watch 指定需要的依赖)6. 拷打 js: - var let const window 以及多 script 标签(一定要注意 let 和 const 的变量不会挂载到 window 哇),var 的变量提升机制(先定义后赋值),变量未声明默认为 var - 手写 Promise.all(应该直接 return 一个 new Promise,我用了 Promise.withResolvers;还有打印的时候用 then,习惯了用 setTimeout 打印了,被狠狠地批评了) - 说说 async 和 await 的实现(是说源码),如果没有 async 的时候使用 await 会不会报错(旧版 node 的 commonjs 会,要用立即调用函数的方式使用,新的和 esmodule 默认支持) - Promise A+规范怎么定义一个 Promise(我只知道要 then 方法,叫我回去看)7. 算法题:二叉树中的最大路径和,返回其路径(力扣 124 改编,无负数,卡了很久都没完全写对,路径递归返回写错了极力狡辩)8. 反问: - 主要技术栈(vue3,node) - 工作时间(11点前上班,12点到2点休息,6点到7点晚饭,8 9点下班,包三餐) - 最近有碰到什么技术难点吗(听不懂我也忘了)
投递字节跳动等公司10个岗位
点赞 评论 收藏
分享
评论
38
143
分享

创作者周榜

更多
牛客网
牛客企业服务