JavaScript デザインパターンのファクトリーの紹介

不言
リリース: 2018-07-03 14:52:08
オリジナル
1220 人が閲覧しました

この記事では、主に JavaScript デザイン パターンのファクトリ パターンを完全な例の形式で紹介し、ファクトリ パターンを使用するための JavaScript の定義と関連する操作テクニックを説明します。

この記事の例では、JavaScript デザイン パターンのファクトリ パターンについて説明します。以下のように、皆さんと共有してください:

1. ファクトリ パターンの概念

ファクトリ パターンは、オブジェクトを作成するためのインターフェイスを定義します。このインターフェイスは、サブクラスによってインスタンス化されるクラスを決定します。このパターンでは、クラスのインスタンス化をサブクラスに延期します。サブクラスは、インターフェイス メソッドをオーバーライドして、作成時に独自のオブジェクト タイプ (抽象ファクトリ) を指定できます。

このモードは、特に多くの設定ファイルに依存するなど、オブジェクトの作成プロセスに値を割り当てる場合に非常に便利です。さらに、プログラムではファクトリ メソッドがよく見られます。ファクトリ メソッドは、作成する必要があるオブジェクトのタイプをサブクラスに定義させるために使用されます。

2. ファクトリーモードの機能と注意事項

モードの機能:

1. オブジェクトの構造は非常に複雑です - 靴を履くのは非常に簡単ですが、靴を作るプロセスは非常に複雑です。複雑です

2. さまざまな例を作成するには、特定の環境に依存する必要があります - 工場では靴と服を作ることができ、工場では私が必要とする靴 (靴は異なります) を作って、指定された場所に送ることができます (場所は異なる可能性があります)、これは異なるインスタンスとして理解できます

3. 属性を持つ同じ小さなオブジェクトを持つ多数のアイテムを処理する - 靴の購入など、生産する工場を見つける必要はありません。

注:

1. ファクトリを悪用しないでください。場合によっては、上記のようにコードが複雑になるだけです。 3

3. ファクトリ パターン コードと実用的な概要

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title>工厂模式</title>
</head>
<body>
<script>
 //1.工厂应该有厂长来决定运行到底哪条产品线
 //2.消费者-》子类
 var gongchang = {};
 gongchang.chanyifu = function(){
  this.gongren = 50;
  console.log("我们有"+this.gongren);
 }
 gongchang.chanxie = function(){
  this.gongren = 100;
  console.log("产鞋子");
 }
 gongchang.yunshu = function(){
  this.gongren = 10;
  console.log("运输");
 }
 gongchang.changzhang = function(para){
  return new gongchang[para]();
 }
 var we = gongchang.changzhang("chanyifu");
 var me = gongchang.changzhang("chanxie");
 console.log(me.gongren);
 var ys = gongchang.changzhang("yunshu");
 console.log(ys.gongren);
</script>
</body>
</html>
ログイン後にコピー

操作の効果は次のとおりです。以下:

以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

JavaScript デザイン パターンのプロキシ パターンの紹介

Vue で Echarts を使用する 2 つの方法の紹介

以上がJavaScript デザインパターンのファクトリーの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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