JavaScript でのオブジェクト作成ステートメント:
var obj = {}; または var obj = new Object();
オブジェクトに属性を追加します、メソッド:
//==== =最初の書き方====================================
obj.name = 'Xiao Ming' //オブジェクトに属性を追加します
obj.updateName = function(name){//オブジェクトの updateName メソッドを定義します
this.name = name; alert(obj.name);
obj.updateName("Xiaoqiang"); // updateName を呼び出して、obj オブジェクトの name 属性値を変更します。
alert(obj['name']);最初に表示される結果は: Xiao Ming
2 番目の表示結果は: Xiaoqiang
//======2 番目の書き方================= ========= ===========
obj['name'] = 'Zhang San' //オブジェクトに属性を追加します
obj['updateName'; ] = function(name){// オブジェクト定義の updateName メソッド
obj['name'] =name
alert(obj.name)('李)思'); // updateName を呼び出して obj を変更します。
alert(obj['name']);
最初の表示結果は次のとおりです。 Zhang San
2 番目の表示結果は次のとおりです。 : Li Si
//=== ==第三の書き方================================= ===
var obj = {
name: '王五', //オブジェクトに属性を追加します
updateName: function(name){//オブジェクトの updateName メソッドを定義します
this .name = name;
}
};
alert(obj .name);
obj.updateName("Zhao Liu"); //obj の name 属性値を変更します。 object
alert(obj .name);
初回 表示される結果は次のとおりです: Wang Wu
2 番目に表示される結果は次のとおりです: Zhao Liu
//======分析==== ================== ================
最初の書き方は、オブジェクトの最も一般的な書き方です。 JavaScript は Java や .Net とは異なり動的言語であるため、
プログラムの実行中やオブジェクトの作成後に、プロパティやメソッドの追加など、
オブジェクトの内部構造を変更することもできます。 Java および .net のリフレクション メカニズムではこれを行うことができません)。
(a): var obj = {} || 新しいオブジェクト();
(b): obj.name = "張三";
(c): obj.updateName = function(name) { this.name = name};
プログラムが実行されると (a)、空のオブジェクト (メソッドとプロパティが含まれない) obj が作成されます。
プログラムが実行されると (b)。変更 obj の内部構造が変更され、属性名が追加されます。
プログラムが実行されると (c)、obj の内部構造が変更され、メソッド updateName が追加されます。
これらはすべて実行中に完了します。 running
2 番目の書き方は配列に似ていますが、配列であるかどうかを区別するには、次のように判断できます。
if(typeof(obj.length) ) == "未定義") {
alert(" obj は配列ではありません。配列には長さ属性があります! ");
}else{
alert("obj は配列です!"); >}
2 番目の記述方法は、obj[key] = value; のようなデータ構造: マップに似ています。
key は文字列で、値は任意の型、変数、オブジェクト、関数などです。 。
次の方法でオブジェクトの内部構造をトラバースできます。
for(var key in obj)
{
alert(key);
var value = obj[key]; 🎜>alert (value);
}
定義した内容はアラートを通じて表示できます。
3 番目の記述方法は、一見するとマップの内部構造です。
JSON オブジェクトもこの構造を持ちます。オブジェクトには見慣れたものがあるのでわかりやすいです。