字符串转变成对象
x="2121"
{x}
//{x: "2121"}
请问为什么{x}结果不是{"2121"},而是转成一个对象,
这是跟ES6的解析赋值有关吗?
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
x="2121"
{x}
//{x: "2121"}
请问为什么{x}结果不是{"2121"},而是转成一个对象,
这是跟ES6的解析赋值有关吗?
谢谢
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
参考https://es6.ruanyifeng.com/#docs/object#属性的简洁表示法
不存在
{"2121"}
这样的对象,这语法是不合法的,JavaScript 对象都必须是 key-value pair。{x}
只是 ES6 的语法糖:shorthand property
,等同于{x: x}
{x} 等同于{x:x},对象里第一个x就相当于对象的属性,第二个x就相当于全局定义的变量x="2121",结果就是{x:"2121"}