《JavaScript高程》关于JSON
本文介绍了《JavaScript高程》关于JSON的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
《JavaScript高程》中说JSON中对象的属性名任何时候都要加双引号,后面却又有:
{
"title": "professional javascript",
"authors": [
"nicholas c.zakas"
],
edition: 3,
year: 2011
}
这里的edition
和year
为什么没加双引号?
解决方案
因为你题目中的代码根本不是JSON,而是对象字面量。
JSON是一种独立于具体语言的数据交换格式,它虽然的确是脱胎于JavaScript中的对象字面量表示方法的,但是它的格式要求比对象字面量严格很多,包括属性名必须用双引号括起来。
所以,书中的说法并不矛盾,因为前后说的不是同一种东西。
给你举个例子吧:
var obj = {name: 'foo', age: 12}; // 这是对象字面量
console.log(JSON.stringify(obj)); // 结果是{"name":"foo","age":12},就是JSON
参考这里:http://www.json.org/json-zh.html
这篇关于《JavaScript高程》关于JSON的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文