js での Object.create インスタンスの使用法の詳細な説明

js での Object.create インスタンスの使用法の詳細な説明

1. Object.create() メソッドを使用して新しいオブジェクトを作成し、既存のオブジェクトを使用して新しいオブジェクトの proto を提供します。

2. 2 つのパラメータを指定します。1 つ目は新しく作成されたプロトタイプ オブジェクトであり、2 つ目は新しく作成されたオブジェクトにプロパティを追加するオブジェクトです。

// 父オブジェクト let father = {
    名前: 「父」
    友人: ['アビー', 'ボブ']
}
 
// 新しいインスタンスオブジェクトchild1を生成する
子1 = Object.create(父) とします。
 
// 値タイプ属性を変更する child1.name = '変更された名前'
console.log(child1.name) // 変更された名前
 
// 参照型の値を変更する child1.friend.push('chely')
console.log(child1.friend) //[ 'アビー', 'ボブ', 'チェリー' ]
 
// 新しいインスタンスオブジェクトchild2を生成する
child2 = Object.create(father) とします。
console.log(child2.name) //父親
console.log(child2.friend) //[ 'アビー', 'ボブ', 'チェリー' ]

知識ポイントの拡張:

Object.create()はメソッドインスタンスを作成する

定数人 = {
  isHuman: 偽、
  printIntroduction: 関数() {
    console.log(`私の名前は${this.name}です。私は人間ですか? ${this.isHuman}`);
  }
};

const me = Object.create(人);

me.name = 'Matthew'; // "name" は "me" に設定されているプロパティですが、"person" には設定されていません
me.isHuman = true; // 継承されたプロパティは上書きできます

me.printIntroduction();
// 期待される出力: "私の名前はマシューです。私は人間ですか? true"

運用結果

> 「私の名前はマシューです。私は人間ですか?本当ですか?」

js の Object.create インスタンスの詳細な使用法に関するこの記事はこれで終わりです。js の Object.create メソッドの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JavaScript オブジェクトを作成する新しい方法: Object.create()
  • JavaScript で Object.create() を使用してオブジェクトを作成する方法の紹介
  • JavaScript デザイン パターン プロトタイプ パターン (Object.create と prototype) の紹介

<<:  MySQL の遅いクエリを見つける方法

>>:  nginx proxy_pass 設定で URL が / で終わる場合と / なしで終わる場合の違いの詳細な説明

推薦する

JS はデータ URL をどのように理解するのでしょうか?

目次概要データ URL の使用を開始するデータURL構文複数言語の文字列のBase64エンコードとデ...

JavaScript ESの新機能letとconstキーワードに基づく

目次1. letキーワード1.1 基本的な使い方1.2 変動昇進はない1.3 一時的なデッドゾーン1...

URLに基​​づいてリクエストを転送するnginxの実装の実践経験

序文これは fastdfs を使用してイントラネット外部に展開された分散ファイルシステムであるためで...

MySQLプリコンパイル機能の詳細な説明

この記事では、MySQLのプリコンパイル機能について紹介します。具体的な内容は以下のとおりです。 1...

CSS3 @mediaの基本的な使い方のまとめ

//文法: @media mediatype and | not | only (メディア機能) ...

MySQL データベース アーキテクチャの詳細

目次1. MySQL アーキテクチャ2. ネットワーク接続層3. データベースサービス層4. 接続プ...

MySQLへの外部ネットワークアクセスを許可し、MySQLアカウントのパスワードを変更する方法

mysqlのrootアカウント、普段はlocalhostか127.0.0.1で接続しています。会社の...

関連するプロパティのリストを含む HTML エリア イメージ ホットスポットの使用の概要

<area> タグは主にイメージマップで使用されます。イメージマップにアクティブ領域 (...

mysql 更新ケース更新フィールド値が固定されていない操作

特定のデータの一括更新処理において、特定のステータスが固定値に更新されるなど、更新するフィールドの値...

JavaScriptのプロトタイプオブジェクトを徹底的に理解しましょう

目次1. プロトタイプとは何ですか? 1.1 関数プロトタイプオブジェクト1.2 コンストラクタを使...

MySQL 外部キー (FOREIGN KEY) の使用例の詳細な説明

はじめに: すべてのデータを 1 つのテーブルに保存することのデメリット表の構成構造は複雑で不明瞭で...

WeChat ミニプログラム 宝くじ番号ジェネレーター

この記事では、WeChatアプレットの宝くじ番号ジェネレータの具体的なコードを参考までに紹介します。...

あまり多くのコードを書かずに、ハイパーリンクを使ってシンプルで美しいカスタムチェックボックスを実装できます。

今日ふと、HTML でチェックボックスのスタイルを変更できる範囲が限られていることと、チェックボック...

Dockerコンテナを閉じずに終了する方法の詳細な説明

Docker コンテナに入った後、コンテナを終了すると、コンテナは Exited 状態に変わります。...

Linux での MySQL の文字化け問題の解決方法

プロジェクトはサーバーと対話し、post を通じてサーバー側の jsp にアクセスし、jsp はサー...