プロパティは特別な意味を持っていないとして、ここでは魔法、Constructor
(ビッグC)はありません。
は例として、ここではアラートプラグインです。これは単に慣例にすぎません。
基本的には機能
var Alert = function() {};
Alert.prototype.foo = function() {};
および非クラスようなインターフェースを介して露光を定義する構造体のようなクラスを使用しています。
$('#blurf').alert();
これは単に便利なプラグインの規約です。各jQueryプラグインは、$.fn
オブジェクトのプライマリメソッドを定義します。このメソッドは、クロージャを介して必要なコンストラクタにアクセスできます。しかし、コンストラクタ自体はそのクロージャーに対してプライベートです。 $.fn.myplugin.Constructor
に割り当てるだけで、他のコードへのコンストラクタにアクセスできるようになり、necesary
var myAlert = new $.fn.alert.Constructor('Hello World'); // or something
場合は、今、あなたは、高度なコントロールを持っている代わりに、このようなものができた可能:
$.fn.alert.Alert = Alert;
これは、主観的に、醜いですし、冗長です。そして、コンストラクタにつながるプロパティ名を変換または推測する必要があります。各プラグインが単一のクラスで実装されていて、各クラスのコンストラクタが$.fn.myplugin.Constructor
にあるとすれば、各プラグインの背後にあるクラスにアクセスするための一貫したインターフェイスがあります。
これもやはり慣習であり、それについては特別なことはありません。