0

在 javascript 教程中,我看到了下一个对象定义:

var myObject = {
    validIdentifier: 123,
    'some string': 456,
    99999: 789
};

这种带有引号的键值对作为键的目的是什么?如何以这样的价值观运作?

4

4 回答 4

7

您可以使用括号(称为“括号表示法”或“下标运算符”)访问它们:

myObject['some string']

由于空格,必须引用这样的键(以避免语法错误)。

这样做的原因取决于开发人员。一个(例如,一百万个)示例是将事件和选择器映射到处理函数Backbone.js的 's 。delegateEvents

于 2012-05-08T14:44:03.310 回答
2

如果将它们放在字符串中,则可以使用特殊字符。例如,这是无效的:

myObj.prop-one

但这是:

myObj["prop-one"]

这在访问 DOM 元素的 CSS 属性时特别有用,如下所示:

myElement.style["background-color"], 

什么时候myElement.style.background-color无效。

于 2012-05-08T14:45:10.183 回答
0

这种带有引号的键值对作为键的目的是什么?

在许多情况下,名称中有空格很有用。

var people_per_street = {
    "1st Street: [ ... ],
    "Broadway": [ ... ]
    /* etc */
};

如何以这样的价值观运作?

myObject['validIdentifier'], myObject['some string'], myObject['99999']

于 2012-05-08T14:44:31.593 回答
0

这是一种将逻辑上属于彼此的变量组合在一起的方法。

像这样访问它们:

myObject['some string'];
于 2012-05-08T14:45:13.967 回答