时间:2021-05-25
Javascript中的每个对象(object)都会有 prototype 。试一下:
复制代码 代码如下:
var Richard = new Object();
alert(typeof(Richard.prototype));
结果令人郁闷,浏览器弹出来的是 undefined……
到底是怎么回事呢?
再看一个例子:
复制代码 代码如下:
function Richard(){}
alert(typeof(Richard.prototype));
上面的例子似乎说明,只有 function 对象才有 prototype, 而一般的 Object 对象是没有 prototype 的,事实怎样呢?
我们再来执行一句就明白了:
复制代码 代码如下:
var Richard = new Object();
alert(Richard.__proto__);
是不是明白了?
其实我们都有一个误区,就是认为形成 Javascript 对象的prototype chain 的 prototype 就是一个名字为 prototype 的属性,而且是可以访问的。其实,Javascript 的 prototype 和 名字为 prototype 的属性在一开始一点儿关系都没有,是两个不同的事物。
对于一般对象来说,我们只能通过 __proto__ 这样的属性去访问从 Object 对象继承来的 prototype;
对于函数对象来说,在其建立的时候,已经将 Function对象的 prototype 赋值给了 prototype 属性。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Javascript中所有function中都有一个prototype属性,并且这个prototype属性是一个object类型的对象,所有由该function
Object-OrientedJavaScript:Usingthe`Prototype`Property从JavaScript1.1开始,它就有了一个内置对象
Hash对象(关联数组)是Prototype新建的一个对象,要创建一个Hash对象可以调用$H(object)方法,因为javascript本身的特点(对象本身
本文实例讲述了Javascript对象Clone用法。分享给大家供大家参考。具体如下:Object.prototype.Clone=function(){var
Object.prototypeJavaScript是基于原型继承的,任何对象都有一个prototype属性。Object.prototype是所有对象的根,并