可能性の重複:
Passing in dynamic key:value pairs to an object literal?
Javascript Object Literal referring to another property in itself from another propertyJavaScript:リテラル表記を使用して同じオブジェクトに属する別のプロパティを使用してオブジェクトのプロパティを定義できますか?
var var1 = {};
var1.number = 20;
var1.numberplus3 = var1.number + 3;
console.log(var1.numberplus3);
var var2 = {
number: 20,
numberplus3: number + 3
};
console.log(var2);
この例でvar1.numberplus3
は23と評価されたがvar2.numberplus3
は "未定義" と評価されます。どうしてこれなの?
(私はCodecademyでJSインタプリタを超える使用しています:http://labs.codecademy.com/#:workspace)
ありがとう!
@Tomasz。 *編集:*ああ、私は間違っていた...タイトルを読んでいるはずです...コードは私を混乱させました、申し訳ありません。 –
@kinakuta: 'var2.number'も' this.number'もうまくいきません。 'var2'はまだ定義されていないので、' var2'は動作しません。 'this'はコードが実行されている場所(おそらく' windwow')のコンテキストを参照しますが、100%は 'var2'ではありません。 –
Woops。うん、私はnumberplus3 = var2.number + 3と書くことを意味しました!それは私が実際に走ろうとしたものです! –