Skip to content

好的,已经为您重新整理了这份字节面试题的格式,并移除了个人信息。


字节某部门面试题 ​

一面 ​

聊项目(20min) ​

技术基础 ​

  1. JS有哪些基本类型?判断类型有哪些方式?Object.prototype.toString 的详细原理是什么?
  2. ES6之前是怎么实现继承的?
  3. 闭包的作用是什么?举几个实际应用场景。
  4. React中父子组件的 useEffect 执行顺序是怎样的?
  5. useCallback 和 useMemo 的使用场景分别是什么?
  6. TCP和UDP有哪些区别?
  7. HTTPS的加密传输过程是怎样的?
  8. WebSocket协议在网络分层中属于哪一层?
  9. Cookie和LocalStorage的区别是什么?
  10. 如何让LocalStorage实现过期功能?
  11. requestIdleCallback 会在什么时候执行?如果某一轮事件循环中不断产生微任务,这一轮会结束吗?

算法与代码 ​

  1. 一道异步代码输出题。
  2. 找出二叉树每层的最大值 (要求写出打印顺序)。

追问 ​

  1. git merge 和 git rebase 的区别是什么?平时更常用哪个?
  2. Fiber架构做了哪些优化?
  3. React中 useState 的原理是否基于闭包?

二面 ​

技术与场景设计 ​

  1. SDK设计:如何能让SDK尽可能地不去影响原生项目的运转?
  2. JSBridge兼容性问题:
    • 背景:SDK需要调用客户端(Native)提供的能力(如打开相机、打电话),这通过JSBridge实现。
    • 问题:如果前端组件(依赖于高版本SDK)运行在了安装着低版本SDK的客户端上,导致组件想调用的新功能(如打电话)在当前客户端的JSBridge中不存在,从而调用失败。
    • 提问:有没有什么思路或机制来解决这种版本不一致导致的调用失败问题?
  3. 前端监控:
    • 性能指标采集怎么做的?有哪些关键的性能指标?
    • 用户行为监控是怎么做的?
  4. 介绍一下日常中用得比较多的TS工具函数和一些API。
  5. 有接触过一些Node.js相关的知识吗?或者项目中有没有用到?
  6. 公司内网站的联合登录(SSO)是如何实现的?如果登录过子域名A后,再访问子域名B,是否会重定向?Cookie存在哪个域名下?

算法 ​

  1. 写一个类微信抢红包的函数(随机金额版本)。
  2. 给定一个nums数组,找出所有符合 a+b+c===0 的不重复三元组 (顺序不重要)。

三面 ​

实习与项目经历 (30min) ​

  1. 在第一段实习公司里面学到了什么?
  2. monorepo 相比于多仓管理有哪些优缺点?
  3. 硬链接和软链接的具体应用场景是什么?
  4. 埋点SDK设计中的兼容性如何处理?浏览器兼容性如何覆盖?
  5. 埋点项目最终交付形态是什么样子的?存储层用了什么?为什么要用ClickHouse?
  6. 项目中的技术难点是什么?
  7. (上一段实习相关内容...)

拷打技术基础 ​

  1. 访问一个网址的全流程是什么?
  2. DNS中路由到目标服务器的过程详细讲讲。
  3. 七层网络协议了解吗?展开讲一下。
  4. 讲讲HTTP缓存机制及优先级。
  5. HTTP状态码:4xx和5xx分别代表什么?301、302、307分别是什么?
  6. HTTPS加密过程。
  7. 线程和进程的区别。
  8. LocalStorage与Cookie的差异有哪些?
  9. requestIdleCallback 的工作原理。
  10. 日常Git操作有哪些?(展开讲讲 rebase 和 merge 的区别,fetch 和 pull 的区别)。
  11. 如何撤销本地未提交的修改?如果只能用git命令实现呢?
本站访客数 人次 本站总访问量 次