72

可能重复:
访问同一对象中的 JavaScript 对象文字值

首先看下面的 JavaScript 对象

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

我想将birthplace值设置为相同country,所以我将对象值country放在前面birthplace但它对我不起作用,我也使用过this.country但它仍然失败。我的问题是如何在对象中访问对象的属性。

一些用户沉迷于询问“您想做什么或发送脚本等”,这些人的答案很简单“我想访问对象内的对象属性”并且上面提到了脚本。

任何帮助将不胜感激 :)

问候

4

2 回答 2

89

使用对象字面量语法时,您不能在初始化期间引用对象。您需要在创建对象后引用它。

settings.birthplace = settings.country;

在初始化期间引用对象的唯一方法是使用构造函数。

此示例使用匿名函数作为构造函数。新对象是用 引用的this

var settings = new function() {
    this.user = "someuser";
    this.password = "password";
    this.country = "Country";
    this.birthplace = this.country;
};
于 2012-10-08T20:42:43.770 回答
1

您无法访问其自身内部的对象。您可以使用变量:

var country = "country";
var settings = {
  user:"someuser",
  password:"password",
  country:country,
  birthplace:country
}
于 2012-10-08T20:42:44.467 回答