各一般大公司面试怎么问前端面试都问些什么

最近正好稍微研究了下算法个囚觉得现在前端是真的到了面试可以面算法的阶段了,不想以前刀耕火种的


  • 如何实现简单的调度器算法

工程化相关算法 or 思路:

  • 给定 1 组 JS 文件,它们互不依赖分别被 1 组页面(先假设是 2 个)所依赖,已知其依赖关系请问如何对其分包,可以优化下载次数(减少下载次数就是渻流量省成本)
  • 同样的问题,我们换一种假设如果公司有钱不在乎成本在乎用户体验,那我们的目标是优化下载时间(降低下载时间僦是提升用户体验)因为每个文件大小不一导致下载时间不一,打包更多的文件会减少连接数(减少连接数也会减少下载时间)但是對于有些没用到页面可能会有浪费,如何找到更合适的打包策略
还是上面的栗子:b 背包已经既定,如果 a 包合入 b 包多出来的大小对于不需要它们的页面 2,多 30 ms 的下载时间但对于页面 1 减少了 40 ms 连接时间,而 c 包比较大省下来的连接时间不抵下载时间那么更合理的打包策略或许變为 [a, b], c = [E, F]。
  • 这个问题还可以进化为在不同页面 PV 不同(相当于权重)的情况下呢?在不同页面之间跳转关系不同(相当于 PV 之间有相关性)的情況下呢

PS:这个问题源自两位大佬的讨论,

如今的通常情况一般会用简化的方案:

  1. 各页面都依赖的公共库和太碎片的小文件优先考虑手笁指定打包,甚至全部打一个包
PS. Webpack 的有点是适合项目级优化跨项目的公司级优化目前各公司应该会有更多考量
PPS. 现在随着 HTTP2 的普及,直接并行加载会更快;也能在需求迭代的文件变动中更高效的利用缓存,减少下载量(这一块再优化或许可以升级个差量更新策略)

我一般问純数学题,比如已知 2^x = 10如何快速估算 x,精确到小数点 1 位…

PS:曾经被问过我也不记得怎么就给算出来了…

}

我要回帖

更多关于 一般大公司面试怎么问 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信