誰もが知っているはずですが、JavaScript には実際のClasses
.
ただし、簡単な関数を使用して、セットアップのようなクラスを作成できます。
元:
var Person = function(name){//class like function
this.name = name;//public
var display = function(text){//private
return text;
}
this.getDressed = function(){//public
return display(this.name + " needs to get dressed.");
}
};
var person = new Person("John"),
name = person.name,//returns "John"
dressed = person.getDressed();//returns "John needs to get dressed",
show = person.display("Hello");//throws error "Uncaught TypeError: Object [object Object] has no method 'display'" because there is no such function because it was private.
私の「クラス」には多くの機能があり、次のようなことを行う方法があるかどうかを知りたいです(機能しないことがわかっています):
this = {
fun1: function () {},
fun2: function () {},
fun3: function () {}
}
私はこれがやっていると思うので:
this.fun1 = function(){};
this.fun2 = function(){};
this.fun3 = function(){};
かなり醜いです。すべての関数をオブジェクトに保持してからアタッチする方法はありますthis
か?