JSON的简介

一、什么是JSON?

JSON: JavaScript Object Notation(JavaScript 对象表示法)

JSON 是存储和交换文本信息的语法,类似 XML。

JSON 比 XML 更小、更快,更易解析。

JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。

JSON 具有自我描述性,更易理解

具体json实例

{
    "nickname": "李昊哲",
    "hobby": [
        "游泳",
        "健身",
        "爬山"
    ],
    "wife": {
        "nickname": "大美丽",
        "gender": "0"
    },
    "gril_friends": [
        {
            "nickname": "大美丽",
            "gender": "0"
        },
        {
            "nickname": "小美丽",
            "gender": "0"
        }
    ]
}

二、JSON与XML的区别

(1)、相同之处

  1. JSON 是纯文本
  2. JSON 具有"自我描述性"(人类可读)
  3. JSON 具有层级结构(值中存在值)
  4. JSON 可通过 JavaScript 进行解析
  5. JSON 数据可使用 AJAX 进行传输

 (2)不同之处

  1. 没有结束标签
  2. 更短
  3. 读写的速度更快
  4. 能够使用内建的 JavaScript eval() 方法进行解析
  5. 使用数组
  6. 不使用保留字

 三、JSON语法规则

1、JSON 数据的书写格式是:key: value; key是名称,value是值

{"name":"CSDN";}

2、JSON 对象在大括号 {} 中书写 :

{key1 : value1, key2 : value2, ... keyN : valueN }

3、JSON 值可以是:数字(整数或浮点数)、字符串(在双引号中)、逻辑值(true 或 false)、数组(在中括号中)、对象(在大括号中)、null

 (1)数字(整数或浮点数)

{"age":18,
 "height":178.5,
}

 (2)数组

{"hobby": [
        "游泳",
        "健身",
        "爬山"
    ],
}

(3)逻辑值(true 或 false)

{ "flag":true }

(4)JSON 可以设置 null 值:

{ "runoob":null }

四、什么是JSON.parse()

JSON 通常用于与服务端交换数据。

在接收服务器数据时一般是字符串。

我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象,就是将字符串转成对象

<script>
  let obj='{ "name":"runoob", "alexa":10000, "site":"www.runoob.com" }';
  let result=JSON.parse(obj);
  console.log(result);
</script>

五、什么是JSON.stringify()

JSON 通常用于与服务端交换数据。

在向服务器发送数据时一般是字符串。

我们可以使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串。

<script>
    let person = {
        nickname: "李昊哲",
        age: 39,
        gender: 1,
    };
    console.log(person);
    // JSON.stringify(对象名) 返回值为该对象的json格式字符串
    let json_text = JSON.stringify(person);
    console.log(json_text);
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值