gpt4 book ai didi

javascript - JS 中的对象字面量符号差异

转载 作者:搜寻专家 更新时间:2023-11-01 04:09:32 25 4
gpt4 key购买 nike

JavaScript 处理以下两个声明的方式有区别吗?

var foo = {
foo : true,
bar : 1
};

var foo2 = {
"foo" : true,
"bar" : 1
};

JavaScript 似乎对它们一视同仁。如果它们真的相同,那么是否有“正确”或首选的方式来声明这一点?

最佳答案

任何一种形式都适用于“初始化”一个对象(也就是声明一个对象字面量)。

属性标识符可以是 names, numbers, or strings但它们都被解释为字符串:

var foo = {
foo : true,
"bar": true,
3 : true
};

See the ECMA-262 5th Edition Language Specification § 11.1.5了解更多详情。

请注意,PropertyName 结构可能在第 5 版中发生了变化(很多事情都发生了变化),因此不支持最新版本 JavaScript 的浏览器可能会实现不同版本的 ECMAScript。

另请注意 JSON defines objects as sets of string/value pairs和字符串用引号括起来:

var fooJSON = '{"foo":true,"bar":true,"3":true}';

关于javascript - JS 中的对象字面量符号差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19297540/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com