javascript new后的constructor属性

(编辑:jimmy 日期: 2025/12/4 浏览:2)

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;

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

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。