使用'undefined'作为对象中的键会导致`undefined`被用作键。为什么?

时间:2015-01-06 22:43:29

标签: javascript

如同,{'undefined': 'foo'}会产生{undefined: 'foo'}

在Chrome中:

Chrome Screenshot

在Firefox中:

Firefox Screenshot

在Safari中:

Safari Screenshot

为什么呢?我尝试了其他保留字(例如nulltrue),这些似乎也被转换了。

1 个答案:

答案 0 :(得分:3)

与保留字无关。无论您使用哪个字符串键,都会以这种方式显示对象键。它只是在控制台上为您解释/呈现的方式。

var o = {'cheese': 'foo'};
// Object {cheese: "foo"}

o.cheese; // "foo"
o['cheese']; // "foo"

引号对于访问是不必要的,因此它们将被删除。