58同城web前端二面

  1. node中cluster是怎样开启多进程的,并且一个端口可以被多个进程监听吗?
  2. nodejs中定时器process.nextTick和setImmediate的区别,优先级
  3. BOM是什么?
  4. node express 如何处理 formdata
  5. 元素垂直居中、水平居中(减掉自身高度一半)
  6. 怎么避免自己的页面被iframe嵌套 (不知道)
  7. 你了解事件循环吗?
  8. 移动端的适配的几种方法,rem的原理,rem是怎么和px换算的?
  9. 异步的处理方式,都是怎么处理的?
  10. JS模块化Commonjs,UMD,CMD规范的了解,以及ES6的模块化跟其他几种的区别,以及出现的意义。
  11. 哪些样式会让元素脱离文档流?
  12. 如果给你一段js的字符串代码,比如var a = 1; ....这样的代码,你怎么去执行他
  13. 前端行业目前比较关注的点了解吗?
  14. 文本居中, flex 的和 line-height 的
  15. 写getPosition方法 求出 元素ele的位置(x,y)
  16. 你为什么要离开上一家公司?
  17. 自我介绍
  18. delegate如何实现
  19. Vue computed的原理是什么?为什么避免在computed里面进行修改数据的操作?
  20. 你觉得你在这个团队,你的优势是什么呢,尤其是技术上?
  21. 大多数浏览器支持 hashchange 事件,能否写一段代码让不支持的浏览器也支持?
  22. 如何限制元素可点击区域为圆形?
  23. let有什么用,有了var为什么还要用let?
  24. 由于 this 关键字很混乱,如何解决这个问题
  25. 举一些ES6对String字符串类型做的常用升级优化?

编程题

  • 给定一个二叉树,判断它是否是高度平衡的二叉树。

  • 本题中,一棵高度平衡二叉树定义为:

一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。

示例 1:

输入:root = [3,9,20,null,null,15,7]
输出:true

示例 2:

输入:root = [1,2,2,3,3,null,null,4,4]
输出:false

示例 3:

输入:root = []
输出:true