JavaScript调用对象语法

时间:2014-07-23 14:25:55

标签: javascript node.js object

我需要知道为什么这不起作用。我的Javascript代码访问对象中的变量。但它似乎没有起作用,部分原因是因为我无法弄清楚语法。

    var obj = {
        size:"small",
        big:false,
        thing:true
    }

    alert(obj[size]);

我只是不确定我的语法是否合适......

2 个答案:

答案 0 :(得分:1)

这将在这里工作。

obj.size //returns small

OR

obj["size"] //returns small

OR

var my_var = "size"
obj[my_var]  //returns small

答案 1 :(得分:0)

您可以通过以下方式引用对象值:

obj["size"]

obj.size

然而,有一个例外。例如,如果你有一个带有数字键的跟随对象:(注意:键仍然是一个字符串,即使它是以这种方式定义的):

var obj = {
   1: true
};

您只能使用以下内容检索其值:obj["1"]

因此,使用obj.1会导致语法错误。

因此,如果您将代码更改为例如alert(obj["size"]);,则代码可以正常工作,但我更喜欢使用console.log(obj["size"]);进行调试。至少,如果您正在使用node.js,就像您的标签所示。

干杯。