ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript オブジェクト指向プログラミング code_js オブジェクト指向

JavaScript オブジェクト指向プログラミング code_js オブジェクト指向

WBOY
リリース: 2016-05-16 17:58:24
オリジナル
1106 人が閲覧しました
コードをコピー コードは次のとおりです。

var orchard = function (){ //Base 型コンストラクターproxy static メソッドはすべてプロキシ関数上にあります
this.constructor && this.constructor.apply(this,arguments)
};
orchard.extend = function() {
varparentObj = this;
varparameters =parentObj.parameters ?
parentObj.parameters.concat(_.toArray(arguments)) : _.toArray(arguments){ //継承型コンストラクター プロキシ
var newparameters =parameters.concat(_.toArray(arguments));
this.constructor && this.constructor.apply(this,newparameters);
_.extend( thisObj,parentObj );
_.extend(thisObj.prototype,parentObj.prototype);
thisObj.base = thisObj.prototype.base =parentObj; function
thisObj.supper = thisObj.prototype.supper =parentObj.prototype; //基本型のコンストラクター クラスのメンバーはすべてコンストラクター上にあります
return thisObj>}; = function( object){
if(typeof object === "未定義") object = {constructor: function(){}};
this.prototype = object.constructor;コンストラクター = this .prototype;
for(this.base の変数名)
if(typeof this[name] === "未定義")
this[name] = this.base[name];
for(this.supper の変数名)
if(typeof this.prototype[name] === "未定義")
this.prototype[name] = this.supper[name]; >for( var i = 0; i _.extend(this.prototype,arguments[i]);
this.prototype.base = this.base; this.prototype .supper = this.supper;
this.supper を削除;
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 "こんにちは、" name;}
}); aBen");
aBen.define({ constructor: function(){ this.supper.apply(this,arguments); } }); var aben = new aBen(); alert(aben.say());

これはアイデアであり、コードは検証されていません。共有するという考えは人それぞれです。はは〜〜
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート