【问题标题】:Javascript reserved wordsJavascript 保留字
【发布时间】:2012-04-27 12:43:44
【问题描述】:

我创建了一个对象,它在 FF 上运行良好,但导致 IE 出现错误(预期的标识符、字符串或数字)

var a={text:'abc',class:'def'};

经过一番研究,我发现 class 是一个保留字。引用“class”这个词解决了这个问题。

var a={text:'abc',"class":'def'};

是否建议始终引用对象名称以消除这些错误?

谢谢

【问题讨论】:

  • 如果您知道保留关键字,不使用引号也无妨。如果您不了解它们或者您想要面向未来,请注意安全。另一个有帮助的例子是在使用 "border-width": valueborderWidth: value 之类的 css 道具时
  • 建议避免使用保留字作为自定义属性/方法:)
  • 困扰我的是保留供将来使用的关键字在编辑器中突出显示,导致烦恼(例如express.static)。
  • 这里我解释了为什么不能使用保留字或关键字,并为您提供一个包含 JavaScript 关键字列表的链接:stackoverflow.com/a/46922701/4066742

标签: javascript


【解决方案1】:

不,这不是一般推荐的东西。

建议不要使用这样的保留字。您可以很容易地将class 更改为其他任何内容。

【讨论】:

  • 取决于,例如,mootools 元素构造函数期望 'class' 来设置 className - 除了引号之外别无他法。
  • jQueryUI Dialog 也使用了class这个词。
【解决方案2】:

看看这里:

https://developer.mozilla.org/en/JavaScript/Reference/Reserved_Words

并且不要使用对象字面量中未引用的任何单词。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2018-04-10
  • 2012-05-10
  • 2012-01-24
  • 2018-04-13
  • 1970-01-01
  • 2014-05-06
  • 2012-07-30
  • 2014-03-29
相关资源
最近更新 更多