javascript new后的constructor属性
javascript new后的constructor属性
发布时间:2016-12-30 来源:查字典编辑
摘要:js对象生成时:如:functionBB(a){this.a="kkk"}varb=newBB();这时b是对象有了BB的的属性protot...

js对象生成时:

如:function BB(a){

this.a="kkk"

}

var b=new BB();

这时b是对象有了BB的的属性prototype所指向的prototype对象;

prototype对象有constructor属性指向BB这个函数;

所以alert(b.constructor==BB.prototype.constructor) //true

这里的“有了”的执行过程是先查看b有没有此属性让后去查看prototype里的属性值,不是简单的A=B:

如添加:b.constructor="ccc";

执行:alert(b.constructor==BB.prototype.constructor) //false; BB.prototype.constructor仍然是BB函数;

看一下taobao的kissy的继承:

复制代码 代码如下:

O = function (o) {

function F() {

}

F.prototype = o;

return new F();

},

sp = s.prototype,

rp = O(sp);

r.prototype = rp;

//alert(r.prototype.constructor==sp.constructor)

rp.constructor = r;

//alert(r.prototype.constructor==sp.constructor)

r.superclass = sp;

刚开始理解错了,不明白一直这样来回空调用

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类