title: 阿里面试的一点感受 categories:
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);
<p> 算是比较基础,但是b.x的结果是多少,你就别弄错了。</p><p> <strong>2. 闭包+作用域链+单线程+垃圾回收</strong></p>
<p> 问你对闭包中一些变量的生存期,闭包一些值如何才能够作用域链中获取,setTimeout函数的考核,GC的标记清理和循环计数等,算是些比较常见也比较容易出错的点。</p><p> <strong>3. 作用域+构造函数+设计模式+对"类"的深入理解</strong></p>
<p> 虽说他给的就一道小题目,但是涉及的内容还挺多的,需要对一些基础东西有比较深刻的理解才能答好。</p><p> <strong>4. 原型链+继承+ES5+继承优化</strong></p>
<p> ES5中Object.create()函数,prototype,new Class()等之间的相互比较,坑很多,容易踩进去。</p><p> 就这四道题目,考核的内容还是相当广泛的,如果你想临时看下前端知识,然后去阿里试试手,我看还是算了,很多东西真的需要有一定的知识积淀,对一些比较常用的东西要有深刻的理解才不会频频语塞,面试官都喜欢刨根问底,要是那个点没有掌握好,他可能会潜意识抓住这个空缺,把你问倒。不过李牧大哥人挺好的,没故意刁难我。走的时候听HR说他等级是P8,也不知道在阿里是个什么位置= =</p>
<p> 我们目前是一群码农,但是要有点思想。拿着一本ECMAScript的规范,很少有人能够硬着头皮把书啃完,因为内容太生硬,太晦涩了。首先咱们应该抛开那种"权威就是标准"的意识,带着疑问和反问去了解别人的思想,我们脖子上的是人脑,不是磁盘,记东西这事应该让磁盘来做,我们需要做的是分析和思考,让这些数据展现出他们的价值,当然,也需要去记一点东西,不要一个splite函数还想着查文档,不要函数是什么还得去百度谷歌看定义,也需要有些基础知识的积淀。</p>
<p> 奋斗吧,再不拼命我们就老了!</p>
<p> </p>