0

在您的对象中使用单词“new”时 Ie8 中的错误。我必须使用这个词,因为我正在使用我正在尝试做类似的事情:

$(e.items.new).each(function(index) {
    console.log(index)
});

在 ie8 中,我收到此错误:“预期标识符”。我认为是因为使用了“新”保存词。

有机会解决吗?谢谢

4

2 回答 2

4

不只是 IE8:new是一个保留字,不应在任何浏览器中用作变量或键名。

如果在定义时使用引号并在检索值时使用括号表示法,则可以使用保留字作为对象键:e.items[ 'new' ]

于 2012-12-31T17:46:59.050 回答
1

使用[]符号,即在您的情况下,e.items['new']而不是e.items.new

这等效于e.items.newJavaScript 引擎从不将属性名称视为字符串以外的任何内容这一事实 - 因此,无论它是否是有效标识符,它都可以是任何内容(new在 JavaScript 中是保留关键字,因此不能使用作为标识符)。

于 2012-12-31T17:45:19.673 回答