JavaScriptでは、数字、文字列、ブール、null、未定義を除き、他のすべての値はオブジェクトです。オブジェクトは、リテラルを介して直接宣言したり、新しいオペレーターを介して新しく作成されたりすることができます。 Java言語とは異なり、JavaScriptオブジェクトのプロパティを動的に追加または削除できます。同時に、オブジェクトのプロパティは空の文字列にすることもできます。
コードコピーは次のとおりです。
//オブジェクトのプロパティは、動的に追加/削除できます
var o = {x:1、y:2};
console.log(o); // object {x = 1、y = 2}
oyを削除します。
oz = 3;
console.log(o); // object {x = 1、z = 3}
//空の文字列はオブジェクトプロパティとして許可されます
var o2 = {"":88、 "p":99};
console.log(o2); // object {= 88、p = 99}
//コンストラクター関数の場合、「新しい」操作はオブジェクトを返します。
関数コンピューター(x、y){
this.x = x;
this.y = y;
}
var c = new Computer(126、163);
console.log(c); // computer {x = 126、y = 163}
var c2 = new Computer(126); //欠落パラメーター値は「未定義」になります
console.log(c2); // computer {x = 126、y = undefined}
CZ = 66;
console.log(c); // computer {x = 126、y = 163、z = 66}
Cyを削除します。
console.log(c); // computer {x = 126、z = 66}
機能する関数がクラスコンストラクターではなく、新しいオペレーターを使用して新しいオブジェクトを作成する場合の単なる通常の関数である場合、JavaScriptは関数を実行した後に空のオブジェクトを返します。
コードコピーは次のとおりです。
//純粋な関数の場合、「新しい」操作は空のオブジェクトを返します。
関数計算(x){
console.log( "execute function compute");
x*2を返します。
}
var a = new compute();
console.log(a); // compute {}
オブジェクトプロパティ
JavaScriptのオブジェクトには、次の3つのプロパティがあります。
1.プロトタイプ。参照。オブジェクトのプロトタイプオブジェクトを指します。プロトタイプオブジェクトのプロパティは、オブジェクトによって継承できます。
2.クラス。オブジェクトのクラス名を表す文字列。
3.Extentensible。ブール値。オブジェクトでプロパティの動的な追加が許可されているかどうかを示します。このプロパティは、ECMAScript 5でのみ有効です。
プロパティプロパティ
オブジェクト内のプロパティには、3つのプロパティもあります。
1.書き込み。このプロパティは書かれていますか?
2.非緩和。 for/in statementを使用する場合、プロパティは列挙されますか?
3.コンフィグラブル。プロパティのプロパティを変更できるかどうか、およびプロパティを削除できるかどうか。