一尘不染

javascript属性名称中允许使用破折号吗?

javascript

我正在看http://docs.jquery.com/Plugins/Authoring#Defaults_and_Options为jQuery创建一个简单的插件。在有关选项和设置的部分之后,我执行了以下操作,该操作不起作用(脚本遇到设置后退出)。

var settings = {
    'location' : 'top',
    'background-color': 'blue'
}
...
$this.css('backgroundColor', settings.background-color); // fails here

一旦我从背景色中删除了破折号,一切就可以正常工作。

var settings = {
    'location' : 'top',
    'backgroundColor': 'blue' // dash removed here
}
...
$this.css('backgroundColor', settings.backgroundColor);

我是否缺少某些内容,或者jQuery文档是否错误?


阅读 306

收藏
2020-05-01

共1个答案

一尘不染

没有。解析器会将其解释为减法运算符。

你可以做settings['background-color']

2020-05-01