JS 构造器的研究
JS 构造器的研究
构造器在JS中一个 Function 对象. 你当然可以使用函数的定义方法来创建
var _f=function(){}
也可以用对象的构造方法来创建了
var _f=new Function();
两个是一样的.
创建完后 我们的_f对象就有prototype属性了
prototype属性本身又是一个对象.
在JS中提供从function对象构造对象的接口 具体使用是这样的
var myOb= new _f();
在使用new 构造的时候 是把 _f 中的prototype所有的属性和方法复制进 构造出来的对象中.
所以我们可以这样
var _a = {id:'***'}
_f.prototype=_a;
然后在使用new
那么构造出来myOb 就有 id = '***'这个属性了.
其实就是对象复制,我们可以这样来复制
var _a={id:'***'}
var a = (function(){
var _t={};
for(var p in _a){
_t[p]=_a[p];
}
return a;
})();
var _f=function(){}
也可以用对象的构造方法来创建了
var _f=new Function();
两个是一样的.
创建完后 我们的_f对象就有prototype属性了
prototype属性本身又是一个对象.
在JS中提供从function对象构造对象的接口 具体使用是这样的
var myOb= new _f();
在使用new 构造的时候 是把 _f 中的prototype所有的属性和方法复制进 构造出来的对象中.
所以我们可以这样
var _a = {id:'***'}
_f.prototype=_a;
然后在使用new
那么构造出来myOb 就有 id = '***'这个属性了.
其实就是对象复制,我们可以这样来复制
var _a={id:'***'}
var a = (function(){
var _t={};
for(var p in _a){
_t[p]=_a[p];
}
return a;
})();
design_ss- 帖子数 : 122
积分 : 373
威望 : 0
注册日期 : 11-12-28
您在这个论坛的权限:
您不能在这个论坛回复主题
10/09/13, 06:50 am 由 design_ss
» javascript 函数的方法call()和apply()
09/09/13, 05:10 am 由 design_ss
» JS中typeof与instanceof的区别
08/08/13, 11:10 am 由 design_ss
» JS中的构造函数解析
08/08/13, 09:44 am 由 design_ss
» js对象属性方法大总结
08/08/13, 08:46 am 由 design_ss
» js中的值类型和引用类型小结 文字说明与实例
08/08/13, 06:35 am 由 design_ss
» CSS3中轻松实现渐变效果
05/07/13, 09:48 am 由 design_ss
» jQUery 常用实例
03/07/13, 09:56 am 由 design_ss
» mask_layer 遮照
03/07/13, 08:18 am 由 design_ss