クラスを作成するか、単一のオブジェクトを作成するかによって異なります。
JavaScript OOP モデルは、クラスではなくプロトタイプに基づいています。そのため、プロパティとメソッドをクラス (そのクラスのすべての「インスタンス」がそのプロパティまたはメソッドを持つことを意味します) だけでなく、特定のオブジェクトにも追加できます。つまり、クラス C のオブジェクト A と B のインスタンスを持つことができ、A だけが持ち、B には持たない特別な動作を A に追加することができます... JavaScript には実際にはクラスがないため、これはすべて奇妙に聞こえます。プロトタイプのみがあり、プロトタイプでできることを使用して、多かれ少なかれクラスを「シミュレート」できます。JavaScript では、オブジェクト A が他のオブジェクト B の「インスタンス」である場合、実際には B が A のプロトタイプであると言っているのです。つまり、B との違いに基づいて A を定義するということです。
現実の世界では、羊との最初の出会いは、大きくて白い毛むくじゃらの羊であるドリーとの出会いでした。つまり、Dolly.color = white; と言います。Dolly.hair = a_lot; Dolly.size = 大きい; それから、誰かが羊の色は何ですかとあなたに尋ねます。あなたはドリーしか知らないので、すべての羊はドーリーとまったく同じだと思い、白と答えます...そして別の羊、ピートに会いましたが、これは黒くて大きくて、ハリー。つまり、ピートは黒いことを除いて、ピートはドリーとまったく同じであると言います.. したがって、Pete.Prototype = Dolly (つまり、Dolly とまったく同じであることを意味します) としますが、色を上書きして次のように言います。違います: Pete.color = black;
JavaScript でクラスを「シミュレート」するには、すべての羊の「デフォルト」品質をすべて備えた Sheep という「理想的な」羊を定義し、それを他のすべての羊のプロトタイプとして使用します。
JavaScript でクラスを定義するには、さまざまな方法があります。ただし、実際にクラスを定義するのではなく、プロトタイプを作成し、クラスをシミュレートしていることを常に覚えておく必要があります。何が起こっているのか、そしてそれを最大限に活用する方法を本当に理解したい場合は、プロトタイプについて学んでみてください。