什么是JSON?

时间:2008-11-13 13:47:49

标签: json

什么是JSON?

6 个答案:

答案 0 :(得分:48)

  

JSON(JavaScript Object Notation)是一种轻量级数据交换格式。人类很容易读写。机器很容易解析和生成。它基于JavaScript编程语言的一个子集,标准ECMA-262第3版 - 1999年12月.JSON是一种完全独立于语言的文本格式,但使用C语言系列程序员熟悉的约定,包括C语言,C ++,C#,Java,JavaScript,Perl,Python等等。这些属性使JSON成为理想的数据交换语言。

参考:json.org

对象是一组无序的名称/值对。对象以{(左括号)开头,以}结尾(右大括号)。每个名称后跟:(冒号),名称/值对用(逗号)分隔。

alt text
(来源:json.org

数组是有序的值集合。数组以[(左括号)开头,以]结尾(右括号)。值以(逗号)分隔。

alt text
(来源:json.org

可以是双引号或数字,或true或false或null,或对象或数组的字符串。这些结构可以嵌套。

alt text
(来源:json.org

字符串是零个或多个Unicode字符的集合,用双引号括起来,使用反斜杠转义符。字符表示为单个字符串。字符串非常类似于C或Java字符串。

alt text
(来源:json.org

数字非常类似于C或Java编号,但不使用八进制和十六进制格式。 alt text
(来源:json.org

以下是一个例子:

{
    "menu": {
        "id": "file",
        "value": "File",
        "popup": {
            "menuitem": [{
                "onclick": "CreateNewDoc()"
            }, {
                "value": "Open",
                "onclick": "OpenDoc()"
            }, {
                "value": "Close",
                "onclick": "CloseDoc()"
            }]
        }
    }
}

在XML中,同样的事情就是:

<menu id="file" value="File">
  <popup>
    <menuitem value="New" onclick="CreateNewDoc()" />
    <menuitem value="Open" onclick="OpenDoc()" />
    <menuitem value="Close" onclick="CloseDoc()" />
  </popup>
</menu>

参考:json.org

希望您现在了解什么是JSON。

答案 1 :(得分:4)

来自维基百科:JSON(Javascript对象表示法)

  

JSON格式经常用于   通过传输结构化数据   一个叫做的进程中的网络连接   序列化。它的主要应用是   在Ajax Web应用程序编程中,   它可以作为替代品   使用XML格式。

答案 2 :(得分:3)

深度版本似乎已被很好地覆盖,也许您正在寻找简短版本?

JSON基本上只是一种将数组从一种语言传递到另一种语言的方法。

它用于Ajax(以及其他),因为使用Ajax,您通常使用服务器端语言(PHP等)将一组结果传递给客户端语言(javascript)。你的javascript用一些参数调用你的PHP页面;你的PHP页面构建一个数组,回声它将它编码为JSON格式;你的javascript捕获JSON并将其解码回要处理的数组。

显然还有更多的东西(因为这个原因,我期待着一连串泪痕式的downvotes :)),但这就是你需要起床并运行它。

答案 3 :(得分:2)

它是JavaScript Object Notation。您可以使用它来回传和发送数据。它经常被推荐,因为没有那么多的开销,就像你用XML获得的那样。这就是为什么它比使用Ajax的XML更受欢迎。

看看这个: http://en.wikipedia.org/wiki/JSON

答案 4 :(得分:0)

在我看来,当想要通过HTTP访问Twitter,facebook等不同服务提供商的web服务时。

然后必须创建一个url并请求连接。当建立连接时,大量数据来自请求站点。

示例

&LT; 7b226665 65644974 656d7322 3a5b7b22 63617465 676f7279 223a7b22 6e616d65 223a2254 72616e73 706f7274 6174696f 6e222c22 68656164 65725f69 636f6e22 3a225c2f 686f6d65 5c2f6164 6d696e5c 2f707562 6c69635f 68746d6c 5c2f7072 6f647563 74696f6e 2e6d6973 73696f6e 7a65726f 2e6f7267&GT;

DATA 本质上难以理解和审判,因此我们有两种选择,可以用 JSON 格式或 XML表示任意数据结构格式。但在XML方面的缺点是,它在语法上比JSON更复杂,文件大小更大。所以最好使用JSON

答案 5 :(得分:0)

JSON:JavaScript Object Notation。

JSON是一种用于存储和交换数据的语法。

JSON是一种易于使用的XML替代方法。

JSON是一种轻量级数据交换格式

JSON与语言无关*

JSON是“自我描述”且易于理解

实施例

    {"employees":[

      {"firstName":"John", "lastName":"Doe"},

      {"firstName":"Anna", "lastName":"Smith"},

      {"firstName":"Peter", "lastName":"Jones"}

    ]}