作家
登录

javascript new后的constructor属性

作者: 来源:www.28hudong.com 2013-03-30 01:22:56 阅读 我要评论

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 词法作用域和闭包分析说明

复制代码 代码如下: var classA = function(){ this.prop1 = 1; } classA.prototype.func1 = function(){ var that = this, var1 = 2; function a(){ return function(){ alert(var1); alert(this.prop1); }.apply>>>详细阅读


本文标题:javascript new后的constructor属性

地址:http://www.17bianji.com/kaifa2/JS/25865.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)