JSON语法规则、对象、数组、JSON.parse() 方法、 JSON.stringify() 方法、以及JSON与XML的区别

一. 什么是JSON

JSON 是一种数据格式。它本身是一串字符串,只是它有固定格式的字符串,符合这个数据格式要求的字符串,我们称之为JSON。

二. JSON语法规则

1.数据在名称/值对中,如"name" : “×××”
2.数据由逗号分隔
3.大括号 { } 保存对象,对象可以包含多个名称/值对
4.中括号 [ ] 保存数组,数组可以包含多个对象

三. JSON对象
JSON 对象使用在大括号{ }中书写。
对象可以包含多个 key/value(键/值)对。
key 和 value 中使用冒号:分割。
每个 key/value 对使用逗号,分割。

可用.或者[ ]来访问对象的值:

var myObj, x;
myObj = { "name":"111", "age":"222"};
x = myObj.name;
或者x = myObj["name"];

四. JSON数组
JSON 数组在中括号[ ]中书写。

​使用索引值来访问数组:

var myObj, x;
myObj = {
    "name":"网站",
    "num":3,
    "sites":[ "Google", "Runoob", "Taobao" ]
}
x = myObj.sites[0];

五. JSON.parse() 方法
使用 JSON.parse() 方法将数据(JSON字符串)转换为 JavaScript 对象。

语法:

JSON.parse(text[, reviver])

text:必需, 一个有效的 JSON 字符串。
reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。

<body>
<h2>从 JSON 对象中创建 JavaScript 对象</h2>
<p id="p"></p>

<script>
	var p=document.getElementById("p");
	var str = '{"name": "111","age":222}';
	var obj = JSON.parse(str);
	p.innerHTML=obj.name;
</script>
</body>

六. JSON.stringify() 方法
使用 JSON.stringify() 方法将 JavaScript 对象转换为JSON字符串。
语法:

JSON.stringify(value[, replacer[, space]])

value:必需, 要转换的 JavaScript 值(通常为对象或数组)
replacer:可选。用于转换结果的函数或数组
space:可选,文本添加缩进、空格和换行符

<body>
​
<h2>将 JavaScript 数组转换为 JSON 对象</h2>
<p id="p"></p>

<script>
var arr = [ "Google", "Runoob"];
var myJSON = JSON.stringify(arr);
document.getElementById("p").innerHTML = myJSON;
</script>
</body>

七. JSON与XML的区别
JSON:

{
    "sites": [
    { "name":"google" , "url":"www.google.com" }, 
    { "name":"微博" , "url":"www.weibo.com" }
    ]
}

XML:

<sites>
  <site>
    <name>google</name> <url>www.google.com</url>
  </site>
  <site>
    <name>微博</name> <url>www.weibo.com</url>
  </site>
</sites>``

JSON 不需要结束标签,更加简短,读写速度更快,且可以使用数组

JSON和XML最大的不同是:XML 需要使用 XML 解析器来解析,JSON 可以使用标准的 JavaScript 函数来解析。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值