Skip to content

腾讯秋招一面

  1. 自我介绍。
  2. 低代码平台面向特定场景还是通用场景?
  3. 特定场景向通用场景重构,有哪些能力是可以借鉴或者复用的?
  4. 组件一般跟 UI 框架的结合比较密切,怎么实现复用?
  5. 对于生成出来的页面以及相关配置,如何存储和解析恢复?
  6. 你的 UI 能做到恢复,那逻辑能力怎么嵌入?比如,问卷 Input 值的校验?
  7. 常见的数据结构,以及各自的实现方法?
  8. 为什么 Fiber 要在树里加上双向链表?对树也是可以做递归,那为什么要用链表?
  9. B 树和 B+ 树?
  10. 设计一种数据结构,能够快速遍历一颗完全二叉树的叶子节点。
  11. Hash Map 的底层原理?
  12. Hash 冲突的前置概念是什么?为什么会有冲突?
  13. 为什么需要有 Hash 函数?而不是直接利用数据本身来做 key?
  14. 通过什么指标,可以判断一个哈希函数的冲突的多与少?有什么解决或者改善冲突的办法?
  15. 线程和进程的区别?
  16. 浏览器一个 tab 是一个进程还是一个线程?判断的依据是什么?
  17. React 常用的 Hook 有哪些?各自的用法是什么呢?
  18. useCallback/useMemo 的根本目的?
  19. useReducer 和状态管理库有一定相似性,那是不是可以用 useReducer 来代替状态管理库的使用?或者,考虑代码封装,利用自定义 Hook 来代替状态管理库的使用?
  20. Hooks 不能在回调、循环、分支语句中使用,这是出于什么考虑?
  21. Key 的存在是为了什么?面向的目标是 VNode 还是 DOM?
  22. 你知道原地复用吗?
  23. 讲一下 Promise 使用场景和基本用法?
  24. async 具体怎么使用?
  25. 改写 Image 的加载逻辑,如何实现?
  26. 初始化 Promise 时传入的函数,本身就报错了,那会怎么样?比如,浏览器里不存在 Promise?
  27. 怎么判断一个对象是否是 Promise 实例?不通过 instanceof 判断,那怎么判断?
  28. 手写 Promise 的实现,最复杂的地方在哪里?
  29. then 方法会返回什么?返回的 Promise 是原来的吗?then 里抛出的错误会被之后的 catch 捕获吗?
  30. 讲一下 Web 会用到的一些设计模式,以及在哪些地方用到?不要说设计模式在框架里的应用,比如 Vue-watch 的观察者模式。
  31. 为什么当初用 MutationObserver 模拟微任务的执行?
  32. 平常在代码层面投入的时间多吗?大多数是为了学习的课程还是兴趣,或者其他原因?
  33. 到目前为止,有落地比较成熟、自己会使用的一些项目工具吗?
  34. 「反问」业务、技术栈、增长情况、团队规模。