代码改变世界

阿里面试的一点感受

2013-09-26 21:30  Barret李靖  阅读(14350)  评论(33编辑  收藏  举报

  <!-- [废话开始]

  百度实习三个月,明天就要离职了,感觉还挺开心的,同事们都很照顾我,Boss也比较欣赏我,我很满足了。掐指一算,这大四其实也没几个月了,同事们都在感叹大学的那些事儿,也告诫我要好好享受大学最后的时光,我会好好把握!

  离开之前呢,还挺幸运的,这几天阿里在各地招人,我也去试了一把,由于之前拿过阿里的实习offer,所以笔试就给免了,呵呵,也省得我再去做那些枯燥的笔试题。不过期间也有不少的坎坷,就不细说了= =

  下午四点去北京大望路附近某个旮旯里头找alibaba。阿里给我的第一印象就是设计很给力,公司的橙色主题色也十分醒神,特别是那些HR美眉,虽说有些事情是她们的职责,表现出来的和蔼还是挺发自内心的,赞!刚去的时候,一堆HR在开会,应该是讨论招新的事情吧,全是妹纸= = 然后一个人磨叽磨叽的凑了过去,被人发现之后,HR老大停止了说话,然后所有人的目光投向了我,额。。。HR老大带我去了一个会议室,让我先等一下,说面试官还没到。

  [废话结束]-->

  

  刚坐下不久,面试官到了,他告诉我他花名是”李牧“,表示不认识啊,囧。问我有没有写阿里的笔试题,当时就帮同事做了下,模糊记得自己也做了一份,然后他来了个干瞪眼,说:“你自己做没做都不知道,那来这儿干嘛!“,语塞了几秒钟,回答说:”我有收到不用笔试直接过来面试的短信= =||“。

  先给了我四道题目,他趁我做题之际把我的博客和github都瞄了一通。面试题目都比较有深度,我觉得要构思几道不错的题目还挺难的,虽说记得原题,我就不贴出来了,就大概说说他都考核了哪些知识吧~

  1. 值类型 引用类型的理解,如

var a = {"x": 1};
var b = a;
a.x = 2;
b.x; 

a = {"x":3};
console.log(b.x);
a.x == 4;
console.log(b.x);

  算是比较基础,但是b.x的结果是多少,你就别弄错了。

 

  2. 闭包+作用域链+单线程+垃圾回收

  问你对闭包中一些变量的生存期,闭包一些值如何才能够作用域链中获取,setTimeout函数的考核,GC的标记清理和循环计数等,算是些比较常见也比较容易出错的点。

 

  3. 作用域+构造函数+设计模式+对“类”的深入理解

  虽说他给的就一道小题目,但是涉及的内容还挺多的,需要对一些基础东西有比较深刻的理解才能答好。

 

  4. 原型链+继承+ES5+继承优化

  ES5中Object.create()函数,prototype,new Class()等之间的相互比较,坑很多,容易踩进去。

 

  就这四道题目,考核的内容还是相当广泛的,如果你想临时看下前端知识,然后去阿里试试手,我看还是算了,很多东西真的需要有一定的知识积淀,对一些比较常用的东西要有深刻的理解才不会频频语塞,面试官都喜欢刨根问底,要是那个点没有掌握好,他可能会潜意识抓住这个空缺,把你问倒。不过李牧大哥人挺好的,没故意***难我。走的时候听HR说他等级是P8,也不知道在阿里是个什么位置= =

  我们目前是一群码农,但是要有点思想。拿着一本ECMAScript的规范,很少有人能够硬着头皮把书啃完,因为内容太生硬,太晦涩了。首先咱们应该抛开那种“权威就是标准”的意识,带着疑问和反问去了解别人的思想,我们脖子上的是人脑,不是磁盘,记东西这事应该让磁盘来做,我们需要做的是分析和思考,让这些数据展现出他们的价值,当然,也需要去记一点东西,不要一个splite函数还想着查文档,不要函数是什么还得去百度谷歌看定义,也需要有些基础知识的积淀。

  奋斗吧,再不拼命我们就老了!