javascript - 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 文档有误?

最佳答案

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

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

关于javascript - JavaScript 属性名称中是否允许使用破折号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5516106/

相关文章:

javascript - 使用 ui-router 的多个参数

javascript - SailsJS - 无法加载静态文件

javascript - 如何从数组中的数组中删除空值?

JavaScript 应用为 String 原型(prototype)调用提供奇怪的输出

javascript - 如何使用 JS 和 NodeJS 服务器为标准 html 页面正确配置 app.yaml?

javascript - 对于 ThreeJS,我正在寻找一个像 AxisHelper 一样工作的 Helper 类或实用程序

javascript - 如何添加动态表单元素但保留其值(JS)

javascript - 错误 : ReferenceError: event is not defined

javascript - 将中间件与 app.use 一起使用

javascript - 是否可以使用 d8 来测量内存使用情况?