首页 新闻 会员 周边

json格式 属性名加引号跟不加的区别

0
[待解决问题]

var js = {

  name = '张三',

  age = 10

}

var json = {

  "name" = '李四',

  "age" = 20

}

像以上这两个例子 我听人家说属性名不加引号的,是JS对象; 加引号的,是json格式;

是这个意思吗?还是说它们另有区别

围观的小白的主页 围观的小白 | 菜鸟二级 | 园豆:208
提问于:2017-02-07 15:28
< >
分享
所有回答(5)
2

不是=号,是:号

凌晨肆丶的洛杉矶 | 园豆:138 (初学一级) | 2017-02-07 16:56
1

差点被带坏。

json 格式里说明了 key 是一个 string , string 的格式是以 ‘ " ’ 开头,并且以  ‘ " ’ 结尾 (单引号不算啊);

你上面两个都是js对象,说第二个是json的你可以保证不打死他了。

json是一种数据交换格式,至少是个字符串。如果是 var t = "{\"name\" : \"李四\",  \"age\" : 20}"; 这样可以说 t是一串json格式的字符串

长蘑菇星人 | 园豆:1832 (小虾三级) | 2017-02-08 11:01
0

标准写法是键加双引号

悦光阴 | 园豆:2251 (老鸟四级) | 2017-02-08 12:42
5

加引号是为了处理特殊字符。

比如,如果key值中有短横线,就必须要加一个引号了。否则会报错。

 {"full-name":'张三'} 这样写没问题,但是不加引号,就会报错。

对应的是JavaScript object中的属性写法。

比如说,为一个对象添加一个带有特殊字符的属性。

var obj = new Object();

obj["full-name"] = '张三';

这样写可以通过,但是如果用点来赋值 就会报错。

obj.full-name = '张三'; //报错

nil | 园豆:879 (小虾三级) | 2017-02-08 12:46
0

aaaaa

呙牛 | 园豆:202 (菜鸟二级) | 2018-12-25 15:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册