javascript原型链再论

来源:互联网 发布:家装网络推广 编辑:程序博客网 时间:2024/06/06 05:42

以前研究过javascript得原型链,但始终觉得有些绕,而且不清晰。最近看了javascript模式后,总算悟了。其实我是受了传统语言类的影响。javascript虽然是面向对象的语言,但是它是没有类的概念的,只是由于它的灵活性,可以模仿强类型的语言,我们却先入为主的为javascript强加上了枷锁,从一个莫须有的模拟角度去理解原型,当然会觉得似懂非懂。所以,我们要抛开类的概念,仅仅从javascript的基本数据结构来理解。

其实整个原型链就是一个链表,prototype,__proto__就是一些指针而已,不要给它加上主观解读。这里附上原型链图





二、函数有2个属性,prototype和__proto__, 对象实例只有1个属性__proto__, prototype 只是指向一个原型对象, __proto__才是真正的原型链指针,显示了继承信息。

三、Function比较特殊,它的2个属性都是指向同一个原型。

0 0