JavaScript オブジェクトは、状態と動作 (プロパティとメソッド) を持つエンティティです。例: 車、ペン、自転車、椅子、ガラス、キーボード、モニターなど。
JavaScript はオブジェクトベースの言語です。 JavaScript ではすべてがオブジェクトです。
JavaScript はクラスベースではなくテンプレートベースです。ここでは、オブジェクトを取得するためのクラスを作成しません。ただし、オブジェクトを直接作成します。
JavaScript でのオブジェクトの作成
オブジェクトを作成するには 3 つの方法があります。
- オブジェクトリテラルによる
- Object のインスタンスを直接作成する (new キーワードを使用)
- オブジェクト コンストラクターを使用する (new キーワードを使用する)
1) オブジェクトリテラルによるJavaScriptオブジェクト
オブジェクト リテラルを使用してオブジェクトを作成する構文は次のとおりです。
object={property1:value1,property2:value2.....propertyN:valueN}
ご覧のとおり、プロパティと値は: (コロン) で区切られています。
JavaScript でオブジェクトを作成する簡単な例を見てみましょう。
emp={id:102,name:'Shyam Kumar',salary:40000} document.write(emp.id+' '+emp.name+' '+emp.salary);今すぐテストしてください
上記の例の出力
2) オブジェクトのインスタンスを作成する
オブジェクトを直接作成する構文は次のとおりです。
var objectname=new Object();
ここ、 新しいキーワード オブジェクトの作成に使用されます。
オブジェクトを直接作成する例を見てみましょう。
var emp=new Object(); emp.id=101; emp.name='Ravi Malik'; emp.salary=50000; document.write(emp.id+' '+emp.name+' '+emp.salary);今すぐテストしてください
上記の例の出力
3) オブジェクトコンストラクターを使用する
ここでは、引数付きの関数を作成する必要があります。このキーワードを使用して、現在のオブジェクトに各引数値を割り当てることができます。
の このキーワード 現在のオブジェクトを参照します。
以下にオブジェクトコンストラクタによるオブジェクトの作成例を示します。
function emp(id,name,salary){ this.id=id; this.name=name; this.salary=salary; } e=new emp(103,'Vimal Jaiswal',30000); document.write(e.id+' '+e.name+' '+e.salary);今すぐテストしてください
上記の例の出力
JavaScriptオブジェクトでのメソッドの定義
JavaScriptオブジェクトにメソッドを定義できます。ただし、メソッドを定義する前に、メソッドと同じ名前のプロパティを関数に追加する必要があります。
オブジェクトにメソッドを定義する例を以下に示します。
function emp(id,name,salary){ this.id=id; this.name=name; this.salary=salary; this.changeSalary=changeSalary; function changeSalary(otherSalary){ this.salary=otherSalary; } } e=new emp(103,'Sonoo Jaiswal',30000); document.write(e.id+' '+e.name+' '+e.salary); e.changeSalary(45000); document.write(' <br>'+e.id+' '+e.name+' '+e.salary);今すぐテストしてください
上記の例の出力
JavaScript オブジェクトのメソッド
Object のさまざまなメソッドは次のとおりです。
はい・いいえ | メソッド | 説明 |
---|---|---|
1 | Object.assign() | このメソッドは、列挙可能なプロパティと独自のプロパティをソース オブジェクトからターゲット オブジェクトにコピーするために使用されます。 |
2 | Object.create() | このメソッドは、指定されたプロトタイプ オブジェクトとプロパティを使用して新しいオブジェクトを作成するために使用されます。 |
3 | Object.defineProperty() | このメソッドは、プロパティのいくつかの動作属性を記述するために使用されます。 |
4 | Object.defineProperties() | このメソッドは、複数のオブジェクト プロパティを作成または構成するために使用されます。 |
5 | Object.entries() | このメソッドは、キーと値のペアの配列を含む配列を返します。 |
6 | Object.freeze() | この方法では、既存のプロパティが削除されるのを防ぎます。 |
7 | Object.getOwnPropertyDescriptor() | このメソッドは、指定されたオブジェクトの指定されたプロパティのプロパティ記述子を返します。 |
8 | Object.getOwnPropertyDescriptors() | このメソッドは、指定されたオブジェクトのすべての独自のプロパティ記述子を返します。 |
9 | Object.getOwnPropertyNames() | このメソッドは、見つかったすべてのプロパティ (列挙可能かどうか) の配列を返します。 |
10 | Object.getOwnPropertySymbols() | このメソッドは、すべての独自のシンボル キー プロパティの配列を返します。 |
十一 | Object.getPrototypeOf() | このメソッドは、指定されたオブジェクトのプロトタイプを返します。 |
12 | オブジェクト.is() | このメソッドは、2 つの値が同じ値であるかどうかを判断します。 |
13 | Object.isExtensible() | このメソッドは、オブジェクトが拡張可能かどうかを判断します |
14 | Object.isFrozen() | このメソッドは、オブジェクトがフリーズしたかどうかを判断します。 |
15 | Object.isSealed() | このメソッドは、オブジェクトが封印されているかどうかを判断します。 |
16 | Object.keys() | このメソッドは、指定されたオブジェクト自体のプロパティ名の配列を返します。 |
17 | Object.preventExtensions() | このメソッドは、オブジェクトの拡張を防ぐために使用されます。 |
18 | オブジェクト.シール() | この方法では、新しいプロパティが追加されるのを防ぎ、すべての既存のプロパティを構成不可としてマークします。 |
19 | Object.setPrototypeOf() | このメソッドは、指定されたオブジェクトのプロトタイプを別のオブジェクトに設定します。 |
二十 | オブジェクト.値() | このメソッドは値の配列を返します。 |