网络编程 
首页 > 网络编程 > 浏览文章

javascript面向对象编程代码

(编辑:jimmy 日期: 2026/2/10 浏览:3 次 )
复制代码 代码如下:
var orchard = function (){ //基类型构造函数代理 静态方法都在代理函数上
this.constructor && this.constructor.apply(this,arguments);
};
orchard.extend = function() {
var parentObj = this;
var parameters = parentObj.parameters ?
parentObj.parameters.concat(_.toArray(arguments)) : _.toArray(arguments);
var thisObj = function(){ //继承类型构造函数代理
var newparameters = parameters.concat(_.toArray(arguments));
this.constructor && this.constructor.apply(this,newparameters);
};
_.extend(thisObj,parentObj);
_.extend(thisObj.prototype,parentObj.prototype);
thisObj.parameters = parameters;
thisObj.base = thisObj.prototype.base = parentObj; //基类型的代理函数
thisObj.supper = thisObj.prototype.supper = parentObj.prototype; //基类型的构造函数 类成员都在构造函数上
return thisObj;
};
orchard.define = function(object){
if(typeof object === "undefined") object = {constructor: function(){}};
this.prototype = object.constructor;
this.prototype.constructor = this.prototype;
for(var name in this.base)
if(typeof this[name] === "undefined")
this[name] = this.base[name];
for(var name in this.supper)
if(typeof this.prototype[name] === "undefined")
this.prototype[name] = this.supper[name];
for(var i = 0; i < arguments.length; i++)
_.extend(this.prototype,arguments[i]);
this.prototype.base = this.base;
this.prototype.supper = this.supper;
this.supper = undefined;
delete this.supper;
return this;
};
orchard.definenew = function(){
var newclass = this.extend();
return define.apply(newclass,arguments);
};

调用:
复制代码 代码如下:
var Person = orchard.definenew({
constructor: function(name){
this.name = name;
},
say: function(){ return "Hello, i'm " + name;}
});
var aBen = Person.extend("aBen");
aBen.define({
constructor: function(){
this.supper.apply(this,arguments);
}
});
var aben = new aBen();
alert(aben.say());

思路就是这样的,代码没验证过。分享的思路,大家自己看着办。哈哈~~
上一篇:createElement与createDocumentFragment的点点区别小结
下一篇:用jQuery模拟页面加载进度条的实现代码
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap