「前端」快手二面面经(已约三面)

整体感觉面试官非常不友善,从最开始的自我介绍环节就开始了,我每次面试自我介绍的时间都控制在 5min 左右,即使有打断的我也没觉得有什么态度上的问题,毕竟人家可能是真的对项目很感兴趣才会打断问你;结果这个面试官在我介绍完项目后,有个部分也就两句话就能说完的也不让我说,整体讲完之后还说“别的面试官是会打断你还是让你说完”,整体给我的感觉就是非常不耐烦。

然后开始正式的面试环节,他说看到一面的面评说我的coding能力很强,但是对于一些原理方面的理解偏弱,于是就开始了对我的简历进行关键词提取,挨个问原理的拷打之路。

  1. 针对我项目中集成了 Sentry,问了一些性能指标的含义,然后问我 sentry 具体是如何进行性能分析和错误处理的?
    1. 这里之前好像也被问到过,写面经写完了忘了总结这个点了,现在总结一下
    2. 性能分析:像LCP和TTFB这样的指标是通过BOM的Performace API和Resource Timing API来进行测量的,具体来说他们都提供了对应的事件,只需要通过js来监听这些事件来捕获时间点即可;
    3. 错误处理:可以通过 window.onerror window.onunhandledrejection 这样的api来对错误/未处理的 Promise reject 进行捕获,然后通过Error.stack这样的来提供对应错误的上下文;包括打包工具可能会对原始代码进行压缩和混淆从而导致报错信息难以阅读,sentry还支持上传source map对错误信息进行优化
  2. 你用 tailwindcss 的时候如果有很多组件需要同时修改样式怎么办?
    1. 封装成一个类就行
  3. 这个封装类是如何实现的?
    1. 当时答的有点答非所问
    2. 通过原生的 css 类选择器加上 @apply 操作符去应用 tailwindcss 的原子类
  4. 用过什么状态管理库,为什么用,为什么不用 Provider
    1. 用的 pinia,因为 Vue 官方推荐的就是这个,Provider 其实也可以,只是当时这么实现了
  5. 看你用了 MongoDB,为什么选择这个?
    1. 因为 NoSQL 的数据库非常适合使用 Vercel 这样有微服务的平台去做部署
  6. 对结构化数据库和非结构化数据库有了解吗
    1. 不了解
    2. 前者就是 mysql 这样的数据库,以表格形式存储,使用 sql 语句进行查询;后者就是 mongoDB 这样的数据库,以 JSON 格式存储,结构灵活,容易扩展
  7. 看你 node 涉及的比较少,为什么不自己写个 node 服务?
    1. 尽量还是专注于前端,其余的部分先使用轻量化的东西顶顶,后续有精力了再去做
  8. 手撕
    1. 链表反转
    2. 实现一个线程池,有固定的线程数,每次发起时如果小于上限则直接执行,如果大于等于上限则等待空闲再执行
  9. 前端的学习路线
    1. 三大件+框架,然后写项目练手,提到最近在看红宝书加深一下对 js 的理解,质疑我红宝书是用来练深度的吗?(我发现压力面的面试官都非常喜欢质疑,不管你说啥不是否定就是质疑)
  10. 原型链相关八股
    1. 这里开始拷打,我答的一点问题没有,他就非要纠结 _proto_ 和 Prototype 的中文翻译,甚至有的问题自己都没搞清楚
  11. 反问环节

当时面完我觉得已经凉了,没想到就在写面经的过程中收到了约三面的电话;真的很奇怪,有时候你面完觉得稳了,跟面试官聊的和和气气,面试官也全程面带笑容,然后面完就把你挂了;有时候面试官又压力拉满,不苟言笑,但又给你过了,真是让人有点啼笑皆非。

#快手##前端##快手求职进展汇总##秋招#
全部评论
你这是工作几年了,还是应届生啊
点赞 回复 分享
发布于 09-06 11:06 北京
佬,线程池那题怎么实现啊 我问gpt写了一堆
点赞 回复 分享
发布于 09-07 00:12 新加坡
中文是隐式原型吧
点赞 回复 分享
发布于 09-17 13:22 浙江
三面过了么佬
点赞 回复 分享
发布于 09-21 23:14 新加坡

相关推荐

9.12一面,9.14二面,9.20三面改到了9.24,实习强相关的问题就不放了面完泡一个月十月底给hr发了个邮件流程结束捏🤗————————————————一面animation和transition的区别手撕动画 div先下移100px 再右移100px手撕 倒计时组件cdn为什么可以加速splitchunks怎么配置前端如何进行缓存react和vue的区别esm和cmj的区别————————————————二面i18n原理强缓存和协商缓存强缓存什么情况下会失效兼容性的问题一般怎么看有没有了解过为什么兼容性会造成高度塌陷的问题app和h5具体怎么调试手撕 LRU缓存手撕 聊天框————————————————三面,输得很彻底输得心服口服。。。。。。。。跨域的情况下如何获取到别的页面localstorage里存放的数据 如何进行安全处理性能指标怎么看的 fcp理想状态应该在几秒内(……)哪些优化会对这个指标产生影响性能指标好和坏的标准为什么服务器反应时间会对fcp和si造成影响从读到这个主文档到最终的这个页面被完全渲染出来发生了什么splitchunks可以无限分包吗什么情况会引发重绘和重排构建的时候js是异步还是同步 js会阻塞dom树渲染吗defer和async的区别 假如在defer后面又有了dom元素怎么办最新的es属性了解吗weakset和set的区别 强引用和弱引用的区别js垃圾回收堆和栈的概念内存泄漏如何检测 有没有实践过什么情况会引发内存泄漏如果写了死循环会造成什么手撕 数组拍平+去重手撕 type嵌套数组的类型 type NestedArray = T | NestedArray[];
应该还行吧:但我还是想说下快手hr,真***啊,一开始wx是叫请在上班时间联系我,签名是因为我下班后会消失,我也能理解,毕竟实习生下班还处理工作信息也挺烦的,因为泡了挺久的了我去问她面试还需要推后续流程吗完全不理,然后发现名字改成了你有神经病姐你这辈子也就这样了,别是一天到晚在微博当厕妹吧
查看35道真题和解析
点赞 评论 收藏
分享
9 21 评论
分享
牛客网
牛客企业服务