文章首发于我的博客php
不少人老是抱怨面试官问一些平时不经常使用的知识点,好比算法呀,网络(TCP)等等,也就是你们常说的:面试造火箭,工做拧螺丝。html
可是有没有想过为何整个前端圈,或者绝大部分面试,不只是前端,各类职位都是这样呢?难道就没人来解决这个问题吗?前端
我以为,事实上,这是一种合理的行为,并非由于存在即合理,而是原本就应该这样,接下来我以两个方面阐述个人观点。html5
在张鑫旭的十问十答里的一个问题是,「前端开发基础扎实的标准是什么?」git
这里面他对「扎实」的解释我以为很适合来答这个问题。github
「扎」其实能够理解为深度,你能够想象一个用一根针,扎你的皮肤,对一个点的压力,可让你痛不欲生。web
那么如何理解知识的深度呢?面试
我仍是拿前端面试来举例,好比考一个快速排序,不少人就以为这有什么好考的嘛,平时又用不到,引擎底层已经写好了 sort 方法,什么数量级用什么排序底层也已经实现好了,不必考了呀。算法
可是其实面试官并非想考你快排的代码是如何写的,说实话,花个十分钟,最多半小时,一个快排的代码你确定能够记住。可是其实考察快排的真正缘由可能不只仅是考察代码,而是考察它的思想,分而治之(分治法),划分算法的运用。编程
另外可能会再问你,它的时间复杂度是多少,如何计算等这些问题,这些问题也不是来考你这一个算法的计算,而是经过这一个算法来看你知道怎么算时间复杂度不?以此来引导你为何快速排序快,为何一样是分治法的归并排序没有这么快。等等相关的算法方面的知识。
面试官所考察的问题只是各类底层思想的一个运用,经过这个实例应用来考察对底层思想的理解程度。因此不少时候大厂的面试老是从浅入深的问问题,直到把你问到不知道为止。
再谈谈「实」,实则能够理解为满,考察知识的广度。
想象一下什么样的状况你才会说一个东西实,给你一晚装满的米饭,而且还压一压,再放进去一些米饭,直到压不下去了为止,这个时候你会说满满的一晚米饭,很实在。
因此对「实」的理解就能够理解为满,全。
如何来体现你对知识的广度呢,也就是实。
好比能够考察一些你平时不经常使用的,可是你也许会用到的知识点。好比一些简单的算法和数据结构,链表呀,网络里面的 tcp/ip 协议族呀,函数式编程呀等等,一些 html5 的特性(好比 web-compoennt)等等。
你可能在平时编程中没用到,或者大多数前端工程师平时不会用到,可是这些是基本功是须要知道的,好比 React 源码中就用到一些简单的数据结构,链表(Fiber 树就是用链表的结构存的,是一个单链表,以及里面还有循环列表的增删改查),若是不知道树能够用链表存,如何对链表进行操做,那么可能你看源码就很成问题。里面还有一些位运算等,位运算平时也不经常使用吧,可是 fb 的工程师就用它来解决实际问题。
再好比 web-component,这已是 w3c 提出的一个前端组件化的标准了,我国也有大佬用 web-component 实现了一些库,好比腾讯出的 OMI。
因此狼叔在 「2019 大前端技术趋势深度解读」里提到可能他是下一代框架的标准。
咱们前端变化得快,新东西也多,如何不跟上时代,多了解(主要了解,不是每一个新东西都要去深究,由于你没那么多时间,大多数时间仍是要用在平时用获得的地方)一些新东西。跟不上时代,也行就会慢慢的被淘汰,因此如今前端招聘基本上都会须要你会一门框架,不论是 React 、Vue、Angular,这些都是趋势,数据驱动,再也不是之前拿起 jQuery 就是干了。
在工做中经常使用的知识点,那些是最重要的,那么你们都会这些,若是你不知道点,别人不知道的东西,这些东西比别人掌握得更深一点,面试官为何要你? 也许你仍是个双非(非98五、211)。
我以为在任何领域都适合一个定律,就是「T」字形发展,先把专业搞深一点,而后往两边扩展。
另外面试官也许会考你一些软技能,考你的不只仅是面试题完成了那么简单。这点注意,越简单的题越不简单(好好理解这句话)。
我拿我本身的经从来举例,以前作小米的笔试题(是那种把题目发给你,两天内作好了发给他)的时候,有一道题是:求最大公约数的题目。
不少人看到这道题以为很简单嘛,几行代码就搞定了,当时跟我一块儿作笔试题的几位竞争者也是,他们就写了一个算法。
而我当时想到,我以为面试官在检查这道题的时候若是看代码仍是有点麻烦,因此我就写了一个界面,界面上提供了能够点击的数字,还有输入框,还有几个计算按钮,一个结果框,用户能够经过点击数字,或者在输入框里输入数字进行计算最大公约数,还作了一些错误提示等。
这至关于作了一个应用,一个能够给用户使用的应用,因此最后由于这道题,我被录取了。
我被录取的缘由,这些都是进去以后,老大告诉个人,当时很惊讶,居然是由于这个。
因此以后我就愈来愈注重用户体验,多一些思考,让别人用本身作的东西的时候更舒服,更方便。
声明:我没当过面试官,因此以上内容大可能是我思考(猜想)的,也能够用说用一种合理的解释,来解释了如今这种现象。
我指望的面试官是这样的,或者说若是我之后当了面试官我会怎么作。
这些是以前咱们组面试官在讨论的时候提到的,但愿能给你们帮助。
我是桃翁,一个爱思考的前端er,想了解关于更多的面试相关的,请关注个人公号:前端桃园