去哪儿网web前端线上面试

  1. 快排是否稳定?为什么不稳定?
  2. node 开启进程的方法有哪些,区别是什么?
  3. 单页面与多页面的区别?
  4. prototype和proto的关系是什么?
  5. 说说Diff算法。
  6. meta viewport原理?
  7. 如何居中div?如何居中一个浮动元素?如何让绝对定位的div居中?
  8. 如果一个页面有很多图片,要怎么进行优化?
  9. 关于前端都学了什么?
  10. 在浏览器端,用js存储2万个小球的信息,包含小球的大小,位置,颜色等,如何做到对这2万条小球信息进行最优检索和存储
  11. 什么是闭包?为什么要用闭包?
  12. 知道页面上某个点的坐标,如何获取该坐标上的所有元素
  13. webpack loader和plugin
  14. 什么是内存泄漏和垃圾回收
  15. 说说你处理过的浏览器兼容性问题
  16. inline和inline-block 的区别
  17. 简单描述一下express中间件
  18. 你接触过同源策略吗?为什么要有同源策略?为了安全,那我可以用服务器一直攻击你的服务器接口,这样还安全嘛?那么为什么要有同源策略?

编程题

  • 给定一个 m x n 二维字符网格 board 和一个单词(字符串)列表 words,找出所有同时在二维网格和字典中出现的单词。

  • 单词必须按照字母顺序,通过 相邻的单元格 内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母在一个单词中不允许被重复使用。

示例 1:

输入:board = [["o","a","a","n"],["e","t","a","e"],["i","h","k","r"],["i","f","l","v"]], words = ["oath","pea","eat","rain"]
输出:["eat","oath"]

示例 2:

输入:board = [["a","b"],["c","d"]], words = ["abcb"]
输出:[]