web-dev-qa-db-ja.com

オブジェクト内のオブジェクトプロパティにアクセスする

可能性のある複製:
同じオブジェクトのJavaScript Object Literal値にアクセス

最初に次のJavaScriptオブジェクトを見てください

var settings = {
  user:"someuser",
  password:"password",
  country:"Country",
  birthplace:country
}

birthplacecountryを同じ値に設定したいので、オブジェクト値countrybirthplaceの前に置きますが、うまくいきませんでした、私もthis.countryしかし、まだ失敗しました。私の質問は、オブジェクト内のオブジェクトのプロパティにアクセスする方法です。

一部のユーザーは「何をしたいのか、スクリプトを送信したい」などの質問に夢中になっています。これらのpplsに対する答えは、「オブジェクト内のオブジェクトプロパティにアクセスしたい」です。

助けていただければ幸いです:)

よろしく

47
Adnan

オブジェクトリテラル構文を使用する場合、初期化中にオブジェクトを参照することはできません。オブジェクトは作成後に参照する必要があります。

settings.birthplace = settings.country;

初期化中にオブジェクトを参照する唯一の方法は、コンストラクター関数を使用する場合です。

この例では、コンストラクターとして匿名関数を使用しています。新しいオブジェクトは、thisを使用した参照です。

var settings = new function() {
    this.user = "someuser";
    this.password = "password";
    this.country = "Country";
    this.birthplace = this.country;
};
71
I Hate Lazy

内部のオブジェクトにアクセスすることはできません。変数を使用できます:

var country = "country";
var settings = {
  user:"someuser",
  password:"password",
  country:country,
  birthplace:country
}
1
Joe