JavaScript プロトタイプのデータ共有とメソッド共有の実装を調べる

JavaScript プロトタイプのデータ共有とメソッド共有の実装を調べる

データ共有

プロトタイプにはどのようなデータを書き込む必要がありますか?

共有する必要があるデータはプロトタイプに書き込むことができます

プロトタイプの機能の1つ:データ共有

属性を共有する必要があり、メソッドも共有する必要があります。

  • 共有する必要のないデータはコンストラクタに書き込む必要があります
  • 共有する必要があるデータはプロトタイプに書き込まれます

事例を見てみましょう

データ共有事例

生徒の名前、年齢、性別はそれぞれ異なります。

生徒全員の身長は188cm、体重は55kgです。
生徒全員は毎日 500 行のコードを書かなければなりません。生徒全員は毎日 10 ポンドのスイカを食べなければなりません。

共通データをプロトタイプに書き込むことができます

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
  <メタ文字セット="UTF-8">
  <title>タイトル</title>
  <スクリプト>
    関数 Student(名前,年齢,性別) {
      this.name=名前;
      this.age=年齢;
      this.sex=セックス;
    }
    // 生徒全員の身長は188、体重は55です
    // 生徒全員は毎日 500 行のコードを書かなければなりません // 生徒全員は毎日 10 ポンドのスイカを食べなければなりません // プロトタイプ オブジェクト Student.prototype.height="188";
    Student.prototype.weight="55kg";
    Student.prototype.study = 関数 () {
      console.log("学習中、500 行のコードを書くのは簡単です");
    };
    Student.prototype.eat = 関数(){
      console.log("10ポンドのスイカを食べる");
    };
    //オブジェクトをインスタンス化して初期化します var stu = new Student ("晨光", 57,"女");
    console.dir(学生);
    コンソールのdir(stu);

// stu.eat();
// stu.study();

  </スクリプト>
</head>
<本文>


</本文>
</html>

出力される内容は次のとおりです:

ここに画像の説明を挿入

シンプルなプロトタイプの作成

プロトタイプにはもっと簡単な方法もあります。以下は上記の例の修正です。

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
  <メタ文字セット="UTF-8">
  <title>タイトル</title>
  <スクリプト>
    関数 学生(名前, 年齢, 性別) {
      this.name = 名前;
      this.age = 年齢;
      this.sex = セックス;
    }
    //簡単なプロトタイプの記述 Student.prototype = {
      //コンストラクタを手動で変更して、コンストラクタ:Student を指すようにします。
      高さ: "188",
      体重: "55kg",
      研究: 関数 () {
        console.log("勉強するのはとても楽しいです");
      },
      食べる: 関数() {
        console.log("おいしいものが食べたい");
      }
    };

    var stu=new Student("Ding Ding Da Ming",20,"男性");
    食べる
    stu.study();
    console.dir(学生);
    コンソールのdir(stu);

  </スクリプト>
</head>
<本文>


</本文>
</html>

ここに画像の説明を挿入

プロトタイプ手法の共有

例えば、食べたら遊ぶ、遊んだら寝るといった方法を設定します。

ここに画像の説明を挿入

<!DOCTYPE html>
<html lang="ja">
<ヘッド>
  <メタ文字セット="UTF-8">
  <title>タイトル</title>
  <スクリプト>
    //プロトタイプ内のメソッドは互いにアクセス可能 function Animal(name,age) {
      this.name=名前;
      this.age=年齢;
    }
    //プロトタイプにメソッドを追加// 食べた後に再生する Animal.prototype.eat=function () {
      console.log("動物は食べる");
      これを再生します。
    };
    // 遊んだ後は寝る Animal.prototype.play=function () {
      console.log("ボールをプレーしています");
      スリープ状態を解除します。
    };
    Animal.prototype.sleep = 関数 () {
      console.log("スリープ");
    };

    var dog = new Animal ("Xiao Su", 20);
    犬を食べる();

    //プロトタイプオブジェクト内のメソッドは互いに呼び出すことができます</script>
</head>
<本文>


</本文>
</html>

JavaScript プロトタイプ データ共有とメソッド共有の実装を探るこの記事はこれで終わりです。JavaScript プロトタイプ データ共有とメソッド共有の実装を探る関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JavaScript でのデータ共有とデータ転送の詳細な分析
  • JavaScript iframeデータ共有インターフェース実装方法
  • jsはフレームワーク間の値の転送を簡素化するためのデータ共有インターフェースを作成します
  • Javascript と VBScript のデータ共有

<<:  Linux (Centos7) での redis5 クラスターの構築と使用方法の詳細な説明

>>:  mysql zipファイルのインストールチュートリアル

推薦する

CSS で TikTok テキスト揺れエフェクトを実装する例

日々の開発において、フロントエンドの学生はアニメーションやデザインについてよく議論します。デザイナー...

背景画像のみを180度回転させるCSS3実装例

1. 心の旅最近コックピットを書いていたときに、背景画像を単純に特定の角度に回転させるという問題につ...

チェックボックスの選択またはキャンセルを実装するJavaScript

この記事では、すべてのチェックボックスを選択または解除するためのJavaScriptの具体的なコード...

CentOS 8 に Postfix メール サーバーをインストールして設定する方法

Postfix は、Linux システム上で電子メールをルーティングまたは配信するために使用される無...

Vue でメニュー権限制御を実装するためのサンプルコード

バックエンド管理システムで作業している場合、通常、メニュー権限制御に関連する問題に遭遇します。もちろ...

JS ES の新機能、変数分離割り当て

目次1. 配列の分離割り当て1.1 配列分離割り当てとは何ですか? 1.2 配列分離割り当てに失敗し...

Docker プライベート ウェアハウスを構築する (自己署名方式)

作成したイメージを一元管理し、サービスの展開を容易にするために、プライベート Docker リポジト...

CSS3セレクターの新機能の実装

目次基本的なセレクタ拡張属性セレクタ疑似クラスと疑似要素セレクター基本的なセレクタ拡張1. 子要素セ...

MySQLデュアルマスター(マスターマスター)アーキテクチャ構成ソリューション

企業では、データベースの高可用性は常に最優先事項です。多くの中小企業は、MySQL マスター スレー...

組み込み Linux 開発環境で ping と nfs を構築するためのソリューション

1. 組み込みソフトウェアレベル 1) ブートローダ -> ブートローダ組み込みシステム全体の...

MySQL 文字セットの表示と変更のチュートリアル

1. 文字セットを確認する1. MYSQLデータベースサーバーとデータベースの文字セットを確認する方...

Vue3.xはコンポーネント通信にmitt.jsを使用します

目次クイックスタート使い方基本原則Vue2.x はコンポーネント通信に EventBus を使用しま...

MySQLデータベースの圧縮バージョンのインストールと設定に関する詳細なチュートリアル

目次1. MySQLをダウンロードする2. 圧縮パッケージを解凍する3. MySQLを初期化する4....

MySQL ストアド プロシージャ (in、out、inout) の詳細な説明

1. はじめにバージョン 5.0 以降でサポートされています。特定の機能を実行するための SQL ス...

テンプレートタグの使用方法の詳細な説明(Vue での使用方法の概要を含む)

目次1. HTML5のテンプレートタグ2. テンプレートタグ操作のプロパティとメソッド3. Vueの...