我一直看到这一点:声明了对象文字,使得某些键被引号括起而其他键则没有.jQuery 1.4.2的一个例子:
jQuery.props = {
"for": "htmlFor",
"class": "className",
readonly: "readOnly",
maxlength: "maxLength",
cellspacing: "cellSpacing",
rowspan: "rowSpan",
colspan: "colSpan",
tabindex: "tabIndex",
usemap: "useMap",
frameborder: "frameBorder"
};
Run Code Online (Sandbox Code Playgroud)
用引号包装前两个属性键(for和)的重要性是什么,而其他属性键是否class少引用?有任何差异吗?
我一直在讨论ECMAScript 5规范 ; 我能找到的是[ 第15.12.3节的注释6,强调我的 ]:
注6:对象呈现为左开括号,后跟零或多个属性,用逗号分隔,用右大括号关闭.属性是一个带引号的String,表示键或属性名称,冒号,然后是stringified属性值.数组呈现为左括号开头,后跟零个或多个值,用逗号分隔,用右括号关闭.
但是,这仅指JSON 的字符串化.