请问一个关于对象的问题!!

菜鸡前端 2018-01-01 03:45:40
第一种
var ourMusic = [
{
"artist": "Daft Punk",
"title": "Homework",
"release_year": 1997,
"formats": [
"CD",
"Cassette",
"LP" ],
"gold": true
}
];

第二种
var myObj = {
top: "hat", 这个top和bottom没有加“”
bottom: "pants"
};
myObj.hasOwnProperty("top"); // true
myObj.hasOwnProperty("middle"); // false

请问这两种情况都是对象的属性, 但为什么第一种中的属性都加了“”
而第二种里的没有?

求解!
...全文
202 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
鸣鸣Amadues 2018-01-01
  • 打赏
  • 举报
回复
第一种是JSON对象,不过JS里JSON对象和JS对象应该是等价的。
鸣鸣Amadues 2018-01-01
  • 打赏
  • 举报
回复
你对第二种加一下,应该也可以的吧
candy_soft 2018-01-01
  • 打赏
  • 举报
回复
第一种进行了对象序列化
天际的海浪 2018-01-01
  • 打赏
  • 举报
回复
第一种是json格式的数据,在标准的json格式数据中属性名必须加双引号。如用JSON.parse()解析json格式的数据时不加双引号会出错。 第二种是js代码中的对象字面量,在对象字面量中属性名如果符合js标识符的语法可以不加引号。当然加引号也是可以的。 也就是说,json格式的数据可以直接放到js代码中当成对象字面量来用,但js中的对象字面量代码却不一定能直接当成json格式的数据来用。

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧