JavaScriptでオブジェクトを作成する方法は何ですか?
2109 ワード
JavaScriptのオブジェクトを以下のように作成する方法がたくさんあります
オブジェクトコンストラクタ
空のオブジェクトを作成する最も簡単な方法は、オブジェクトコンストラクターを使用します.現在、このアプローチは推奨されません.
オブジェクトの作成メソッドは、プロトタイプオブジェクトをパラメーターとして渡すことによって、新しいオブジェクトを作成します
オブジェクトリテラル構文は、NULLをパラメータとして渡すときにCreateメソッドと等価です
任意の関数を作成し、新しい演算子を適用してオブジェクトインスタンスを作成します.
これは、関数のコンストラクタと似ていますが、プロパティとメソッドのプロトタイプを使用します.
ES 6クラスオブジェクトの機能を導入する
singletonは一度だけインスタンス化できるオブジェクトです.コンストラクタへの繰り返し呼び出しは、同じインスタンスを返します.この方法では、複数のインスタンスを誤って作成しないようにすることができます.
オブジェクトコンストラクタ
空のオブジェクトを作成する最も簡単な方法は、オブジェクトコンストラクターを使用します.現在、このアプローチは推奨されません.
var object = new Object();
オブジェクトの作成方法:オブジェクトの作成メソッドは、プロトタイプオブジェクトをパラメーターとして渡すことによって、新しいオブジェクトを作成します
var object = Object.create(null);
オブジェクトリテラル構文:オブジェクトリテラル構文は、NULLをパラメータとして渡すときにCreateメソッドと等価です
var object = {};
関数コンストラクタ任意の関数を作成し、新しい演算子を適用してオブジェクトインスタンスを作成します.
function Person(name){
var object = {};
object.name=name;
object.age=21;
return object;
}
var object = new Person("Ngan Khong");
関数のコンストラクタこれは、関数のコンストラクタと似ていますが、プロパティとメソッドのプロトタイプを使用します.
function Person(){}
Person.prototype.name = "Ngan Khong";
var object = new Person();
これは、関数のプロトタイプを持つオブジェクトCreateメソッドで作成されたインスタンスと等価であり、インスタンスとパラメーターを引数としてその関数を呼び出します.function func {};
new func(x, y, z);
(OR)
// Create a new instance using function prototype.
var newInstance = Object.create(func.prototype)
// Call the function
var result = func.call(newInstance, x, y, z),
// If the result is a non-null object then use it otherwise just use the new instance.
console.log(result && typeof result === 'object' ? result : newInstance);
ES 6クラス構文:ES 6クラスオブジェクトの機能を導入する
class Person {
constructor(name) {
this.name = name;
}
}
var object = new Person("Ngan Khong");
シングルトンパターンsingletonは一度だけインスタンス化できるオブジェクトです.コンストラクタへの繰り返し呼び出しは、同じインスタンスを返します.この方法では、複数のインスタンスを誤って作成しないようにすることができます.
var object = new function(){
this.name = "Ngan Khong";
}
リソースhttps://github.com/sudheerj/javascript-interview-questions#what-are-the-possible-ways-to-create-objects-in-javascriptReference
この問題について(JavaScriptでオブジェクトを作成する方法は何ですか?), 我々は、より多くの情報をここで見つけました https://dev.to/nk2303/what-are-the-possible-ways-to-create-objects-in-javascript-3ndcテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol