JSON

作者: _chuuuing_ | 来源:发表于2017-04-19 21:52 被阅读0次

    JSON = JavaScript Object Notation,即JS 对象标记。是一种轻量级的数据交换格式。JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串,比如:

    var obj = {a: 'Hello', b: 'World'};             //这是一个JS对象,注意键名也是可以使用引号包裹的
    var json = '{"a": "Hello", "b": "World"}';      //这是一个 JSON 字符串,本质是一个字符串
    

    JSON 变量类型

    在 JS 语言中,一切都是对象。因此,任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。
    ==> 但是对象数组是比较特殊且常用的两种类型。
    对象:对象在 JS 中是使用花括号包裹 {} 起来的内容,数据结构为 {key1:value1, key2:value2, ...} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。
    数组:数组在 JS 中是方括号 [] 包裹起来的内容,数据结构为 ["java", "javascript", "vb", ...] 的索引结构。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。

    JSON 语法规则

    花括弧:  一个容器
    方括号:  装载数组
    冒号:    名称和值之间
    逗号:    数组元素之间
    双引号:  用于包裹`键`和`值`
    

    实例

    1 - JSON 数据:键值对

    "name":"Runoob"
    

    2 - JSON 对象

    { "name":"Runoob",  "url":"www.runoob.com" }
    

    3 - JSON 数组

    "sites":[
        {"name":"Runoob", "url":"www.runoob.com"}, 
        {"name":"Google", "url":"www.google.com"},
        {"name":"Taobao", "url":"www.taobao.com"}
    ]
    

    JSON 和 JS 对象互转

    要实现从对象转换为 JSON 字符串,使用 JSON.stringify() 方法

    var json = JSON.stringify({a: 'Hello', b: 'World'}); //结果是 '{"a": "Hello", "b": "World"}'```
    
    要实现从 `JSON 转换`为`对象`,使用 `JSON.parse()` 方法 [○○○](http://www.runoob.com/try/try.php?filename=tryjs_json_parse)
    

    var obj = JSON.parse('{"a": "Hello", "b": "World"}'); //结果是 {a: 'Hello', b: 'World'}```

    和XML的比较

    可读性: JSON和XML的可读性可谓不相上下,一边是简易的语法,一边是规范的标签形式,很难分出胜负。

    相关文章

      网友评论

          本文标题:JSON

          本文链接:https://www.haomeiwen.com/subject/nnahzttx.html