字节跳动三面分享

1,106 阅读1分钟

讨论题

  1. virtual dom 为什么比实体dom 更快
  2. 正常遍历一棵树的时间复杂度是多少,react中做了哪些优化使其变成O(n)
  3. 虚拟机和实体机谁更快
  4. typescript 中 type 和 interface的区别
  5. 如何去评判一个组件的优劣

问答题

  1. http 状态码 204 代表什么
  2. 计算机中进程之间如何通信
  3. setState同步异步问题
  4. 原型链中的属性__proto__,双下划线设计有何用意
  5. 使用高阶组件做过哪些功能

编程题

  1. 定义以下数据结构,使其具强体拓展性

        libs:{
            Button: Button,
            TextArea: TextArea,
            Layout: {
                Header: Header,
                Footer: Footer
            }
        }
    
  2. 判断一颗二叉树是否对称

  3. new 的实现过程

反问

  1. react作者dan发布《things i don't known of 2018》,homebrew 作者不会写反转二叉树面试chrome被拒绝,国外程序员通常是找准一个点深入研究,相反国内程序员更多是在往全能的方向发展,在您心中优秀前端应该是什么样的?或者说应该掌握什么技能

  2. 现在项目有没有使用graphQL, 您如何评价这项技术