javascript对象文字中字段名称的字符串

时间:2013-07-10 15:12:11

标签: javascript

我对js对象文字中的字段名称有疑问。我有一个函数test,如下所示:

function test()
{
    var o1 = {f1:"Hello"};
    var o2 = {"f1":"Hello"};
    alert(o1.f1 + " " + o2.f1);
}

结果是出现一个框,其中写有“Hello Hello”(测试的灵感来自于查看使用字符串表示所有字段名称的代码)。我的问题是,这两个对象有什么区别?引用字段名称之间是否有区别?如果两者在功能上相同,是否有任何特定的风格指南?

1 个答案:

答案 0 :(得分:4)

  

我的问题是,这两个对象有什么区别?

它们完全相同。

  

引用字段名称之间是否有区别?

引用的属性名称可以是无效标识符。

e.g。 { "foo-bar": 1 }很好,但{ foo-bar: 1 }是语法错误。