84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
http://blog.rainy.im/2015/07/...说到并不是所有的对象都拥有prototype这一属性,只有函数有
但是看其他文章又说:每个对象都有一个指向它的原型(prototype)对象的内部链接
到底所有javascript对象都有prototype还是仅仅函数对象有prototype?有啥区别?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
每个函数都有prototype,每个对象都有一个内部属性__proto__,其指向它原型对象。原型对象也是一个对象,所以也有__proto__
我们创建的每个函数都有一个 prototype(原型)属性,这个属性是一个指针,指向一个对象,而这个对象的用途是包含可以由特定类型的所有实例共享的属性和方法。 无论什么时候,只要创建了一个新函数,就会根据一组特定的规则为该函数创建一个prototype属性,这个属性指向函数的原型对象。在默认情况下,所有原型对象都会自动获得一个constructor(构造函数)属性,这个属性包含一个指向 prototype 属性所在函数的指针。
我们创建的每个函数都有一个 prototype(原型)属性,这个属性是一个指针,指向一个对象,而这个对象的用途是包含可以由特定类型的所有实例共享的属性和方法。
无论什么时候,只要创建了一个新函数,就会根据一组特定的规则为该函数创建一个prototype属性,这个属性指向函数的原型对象。在默认情况下,所有原型对象都会自动获得一个constructor(构造函数)属性,这个属性包含一个指向 prototype 属性所在函数的指针。
引自<>中译本 第6.2.3节, 原型模式.
也就是JavaScript的prototype是仅函数拥有, 而对象也拥有prototype是源于其constructor属性所拥有的prototype.
prototype属性是函数所特有,准确来说是构造函数所特有。每一个对象的__proto__指向其构造函数的prototype。详细你可以看下这篇文章
prototype
__proto__
每个函数都有prototype,每个对象都有一个内部属性__proto__,其指向它原型对象。原型对象也是一个对象,所以也有__proto__
引自<>中译本 第6.2.3节, 原型模式.
也就是JavaScript的prototype是仅函数拥有, 而对象也拥有prototype是源于其constructor属性所拥有的prototype.
prototype
属性是函数所特有,准确来说是构造函数所特有。每一个对象的__proto__
指向其构造函数的prototype。详细你可以看下这篇文章