PHP では、次のようなことができます。
class myClass() {
function doSomething(someVar) {
// do something here
}
// etc... (other methods and properties)
}
次に、もちろん、次のように、クラスをインスタンス化した後にそのメソッドを呼び出すことができます。
$myObj = new myClass();
$myObj->doSomething();
ただし、次のように、クラスをインスタンス化せずに、メソッドをスタンドアロン関数として呼び出すオプションもあります (ただし、その関数の依存関係に注意する必要があります)。
myClass::doSomething();
私はそれがC ++に借用されたものだと信じています...スコープ解決演算子として知られています(PHPコードのPaamayim Nekudotayim ...)
http://en.wikipedia.org/wiki/Scope_resolution_operator#PHP
http://www.php .net/manual/en/language.oop5.paamayim-nekudotayim.php
JavaScript でそのようなことを行うにはどうすればよいでしょうか。それは不可能のようです。たぶん私はこれに間違った方法で取り組んでいます。私が達成しようとしていることを開示する必要があります...
私は単に次のような関数を持っています:
function submitContactForm(form) {
// pretty JavaScript...
}
そして、私はそれが機能であることを嬉しく思います。しかし、「resetContactForm()」を実装したいのですが、何らかの方法で submitConatctForm 関数にアタッチしたいと考えています。
私はおそらくこれを行うことができることを知っています:
var contactForm = {
"submit" : function(form) {
//...
},
"reset" : function(form) {
//...
}
}
そして、私は自分の質問にそのように答えたでしょう...
しかし、私はこの構文が好きではなく、避けたいという事実に加えて、上記の構造をクラス定義として使用できないという事実もあります.PHPと同じではありません...だから元の質問に戻ります: クラス定義とスタンドアロン関数のコレクションとして同時に使用できる JavaScript 構造を持つ方法はありますか?