Javascript 什么';s对象文字中带引号和不带引号的键之间的差异
可能重复:Javascript 什么';s对象文字中带引号和不带引号的键之间的差异,javascript,Javascript,可能重复: 我主要是通过使用它来了解JavaScript的,但有些东西我还不明白 这两个对象文字之间的区别是什么: var obj1 = { myProp: '123' }; var obj2 = { 'myProp': '123' }; 它们只是“同义词”,还是有细微的区别 谢谢 如果里面没有操作员,则什么都没有 var obj1 = { my+Prop: '123' // illegal }; var obj2 = { 'my+Prop': '123' //
我主要是通过使用它来了解JavaScript的,但有些东西我还不明白 这两个对象文字之间的区别是什么:
var obj1 = {
myProp: '123'
};
var obj2 = {
'myProp': '123'
};
它们只是“同义词”,还是有细微的区别
谢谢 如果里面没有操作员,则什么都没有
var obj1 = {
my+Prop: '123' // illegal
};
var obj2 = {
'my+Prop': '123' // legal
};
在对象初始值设定项语法中,键可以是数字文本、标识符或字符串
var obj1 = {
1e9: "123" //valid because it's a numeric literal
}
var obj2 = {
$_ASd: "123" //Valid because it's a valid identifier I.E. you could make a variable called $_Asd
}
var obj3 = {
$ hello world: "123" //invalid because it's not an identifier, I.E. you could not make a variable called $ hello world
}
var obj4 = {
'$ hello world': "123" //valid because it's a valid string
}
在此之后,键将变为字符串,而不管它在语法中是什么,因此在
1e9
的情况下,键将是字符串“100000000”
或开头的数字。正确的说法是“当它不是一个有效的标识符时”。@EsTeGe:你搜索过答案了吗?正如Bismark已经提到的,这个问题以前已经得到了回答-1.