JavaScriptでオブジェクトを作成する方法は何ですか?


JavaScriptのオブジェクトを以下のように作成する方法がたくさんあります
オブジェクトコンストラクタ
空のオブジェクトを作成する最も簡単な方法は、オブジェクトコンストラクターを使用します.現在、このアプローチは推奨されません.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-javascript