ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScriptデザインパターンのファクトリパターン例の解説_基礎知識
JavaScript ファクトリ メソッドはオリジナルのメソッドです
オブジェクトのプロパティはオブジェクトの作成後に動的に定義できるため、JavaScript が初めて導入されたときは、次のようなコードが使用されます。書かれます
上記のコードでは、オブジェクトの car を作成します。次に、それにいくつかの属性を与えます。青色で、ドアが 4 つあり、走行距離は 1 ガロンあたり 25 マイルです。最後の属性は実際には関数へのポインターであり、属性がメソッドであることを意味します。このコードを実行すると、対象の車が使用できるようになります。しかし、ここには問題があります。つまり、car の複数のインスタンスを作成する必要がある可能性があり、これは明らかに良い方法ではありません。
解決策: ファクトリ メソッド
この問題を解決するために、開発者は特定の型のオブジェクトを作成して返すファクトリ関数を作成しました。たとえば、関数 createCar() を使用すると、前にリストした車オブジェクトの作成操作をカプセル化できます。
var oCar2 = createCar("blue",3,25);
oCar2.showColor(); //「青」を出力
ファクトリ関数の外でオブジェクト メソッドを定義する
一部の開発者は、この問題を回避するために、ファクトリ関数の外でオブジェクト メソッドを定義し、属性を介してメソッドをポイントします。
var oTempCar = new Object;
oTempCar.color = sColor;
oTempCar.doors = iDoors;
oTempCar.mpg = iMpg;
oTempCar.showColor = showColor;
return oTempCar;
}
var oCar2 = createCar("blue",3,25);
oCar2.showColor(); //「青」を出力