《JavaScript高程》关于JSON

查看:146
本文介绍了《JavaScript高程》关于JSON的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

《JavaScript高程》中说JSON中对象的属性名任何时候都要加双引号,后面却又有:

    {
        "title": "professional javascript",
        "authors": [
            "nicholas c.zakas"
        ],
        edition: 3,
        year: 2011
    }

这里的editionyear为什么没加双引号?

解决方案

因为你题目中的代码根本不是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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆