这些年也有不少的面试别人和面试自己的经历,也有好些人来咨询一些前端的面试题目和准备,所以整理一下记录下来。本文概括地描述一下,面试中除了专业知识和项目相关,还可能会问到的一些问题。

专业知识也好,项目经验也好,比较难体现日常工作中的一些能力。而通过一些其他的问题,面试官可以更加全面地掌握面试者的信息。

# 逻辑思维

逻辑思维主要考察面试者思考的能力,是否结构化、是否有条理,表达描述是否清晰等。

# 技术开放题

使用技术相关的开放题,既可以考察面试对象对技术的掌握和灵活使用的程度。可能会包括以下的问题(内容来自Weekly-FE-Interview (opens new window)):

  • 一次性插入 1000 个 div,如何优化插入的性能
  • 内存不足,一次只允许你装载和操作 1 亿条数据,如何对 100 亿条数据进行排序
  • 在浏览器端,用 JS 存储 2 万个小球的信息,包含小球的大小,位置,颜色等,如何做到对这2万条小球信息进行最优检索和存储

# 设计方案

设计方案的方式,比较贴近工作过程,可以从多个角度考察面试者的知识面、问题瓶颈和边界情况的考虑。通常可能包括以下的内容:

  • 现在要做一个坦克对战的游戏,由你来设计,需要考虑哪些问题
  • 如果让你做一个俄罗斯方块的游戏,讲讲具体的思路
  • 做春节红包、秒杀活动中需要注意什么问题
  • 现在需要通过配置的方式生成各种各样的 H5 活动页面,如何实现

# 逻辑思考

除了方案设计,一些逻辑推导的题目也可以作为考察的一部分。通常来说这类题目有时候让人觉得像脑筋急转弯,可能是这样的题目(有些从网上扒来的题目):

  • 一个 5L、一个 6L 的瓶子,要得到 3L 的水,要怎么做
  • 在一天之中,时针和分针共重叠多少次,时间分别是多少
  • 1=5,2=15,3=215,4=2145,那么 5=?
  • 现有 64 匹马,8 赛道,至少跑多少个回合可以得到前 4 名

还有一些开放性的题目,包括:

  • 为什么下水道的盖子是圆的
  • 一个是两种药片,每种有两个,一个人需要早上吃两种药片各一个,现在这四个药片混在一起了这个人什么方法吃
  • 请把一盒蛋糕切成8份,分给8个人,但蛋糕盒里还必须留有一份

# 其他

除了项目内容,面试官有时候也会了解面试者的一些工作以外的情况。

# 学习与技能

对于程序员来说,自学是很关键的一个能力,而面试过程可能会问到:

  • 平时业余时间有进行学习吗,学习方式是怎样的
  • 会通过哪些途径来了解最新的前端技术
  • 最近有看哪些书,描述一下相关内容
  • 近一年有关注过什么新技术,简单介绍一下
  • 这一年中做过最有挑战性的工作是什么,过程是怎样的
  • 技术领域中最喜欢的东西是什么、为什么
  • 日常工作有难度吗,难点在哪
  • 你最喜欢的前端项目是什么、为什么
  • 个人的职业规划是如何的

# 团队

  • 自己最擅长的是什么工作
  • 你在这个项目中的角色是是什么
  • 你觉得自己给团队带来了哪些价值、做了什么贡献
  • 对新的团队有没有什么要求
  • 团队合作中的代码可读性和维护性,你怎么看

# 结束语

本文更多的介绍一些补充的内容,这些内容会因为面试官的喜好而不一样,所以运气也是面试过程中的一个因素,也可以理解为你和这个团队有没有缘分吧。

部分文章中使用了一些网站的截图,如果涉及侵权,请告诉我删一下谢谢~
温馨提示喵