JSON基本语法(最详细的解答)

理解一个东西,我们首先来看他本身的意思
JSON:JavaScript Object Notation解释为JavaScript的对象表示法,鄙人理解其就是一个对象表示法,没有其他很复杂的地方,只要搞懂它的作用,用来干什么及为什么要用它这些,其实就很容易理解JSON了
如下实例:可以了解为什么会被称之为JavaScript的对象表示法了

<!DOCTYPE html>
<html>
<head>
<meta  charset="UTF-8">
</head>
<body>
<div>
<p>
订单号:<span id="jid"></span><br />
订单姓名:<span id="jname"></span><br />
订单日期:<span id="jdata"></span><br />
</p></div>
<script>
/*使用JSON将JavaScript的对象,集合在一起*/
var JSONObject={
"id":"123456",
"name":"XXX",
"data":"today"
};
document.getElementById("jid").innerHTML=JSONObject.id
document.getElementById("jname").innerHTML=JSONObject.name
document.getElementById("jdata").innerHTML=JSONObject.data
</script>
</body>
</html>

接下来讲讲其语法规则,主要有以下几点,
键值对形式:
数据由逗号分隔:
大括号用来保存对象:
中括号用来保存数组
“id”:1233------键必须为string类型,值可以是数字,字符串,逻辑值(true或false),数组(被保存在中括号中),对象(被保存在大括号中),null
值为字符串
“id”:“123”
值为逻辑值
“statu”:true
值为数组-数组中可以包含多个对象
“id”=123,
“name”:[{“id”:“123”,“data”:“today”},{“id”:“234”}]
值为对象
“cc”={“id”:123,
“name”:“id”:“123”,“data”:“today”}
值为null
“money”:null
2,又因为JSON是JavaScript的对象表示法,所以其可以直接使用JavaScript的方法对JSON进行操作,而不需要其他插件。

var  item=[{"id":123,"name":"chen","age":23},{"id":234,"name":"li","age":22]];

对于这样的JSON对象,我们可以用JavaScript访问数组的方法来对其进行操作
item[0].name
返回chen
同时可以通过下标索引来修改数据
item[0].name=“cc”;
三,如何访问对象值
1,可以使用(.)来获取对象值 对象.属性
同样可以使用(.)来修改其值
删除也可以通过(.)来实现

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<tittle>使用(.)来访问对象值</tittle>
</head>
<body>
<h1 id="bb"></h1>
<h1 id="cc"></h1>
<h1 id="dd"></h1>
<script>
var a,b,c;
a={
"id":123,
"name":"xiaoming",
"addr":"hubei"};
delete a["addr"];
b=a.name;
a.id=2345;
c=a.id;
d=a["addr"];
document.getElementById("bb").innerHTML=b;
document.getElementById("cc").innerHTML=c;
document.getElementById("dd").innerHTML=d;
</script>
</body>
</html>

同时也可以使用中括号来获取其值:
对象[属性名]
同样也可以通过该方式对其进行修改
删除也可以通过该方式对其进行修改

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<tittle>使用(.)来访问对象值</tittle>
</head>
<body>
<h1 id="bb"></h1>
<h1 id="cc"></h1>
<script>
var a,b,c;
a={
"id":123,
"name":"xiaoming",
"};
b=a["id"];
a["name"]="xiaofang";
c=a["name"];
document.getElementById("bb").innerHTML=b;
document.getElementById("cc").innerHTML=c;
</script>
</body>
</html>

3,既然我们可以访问了,那么我们接下来就实现将JSON对象遍历出来
–for(新建对象 :对象)
–采用对象.属性名

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<tittle>使用(.)来访问对象值</tittle>
</head>
<body>
<h1 id="cc"></h1>
<script>
var a,b;
a={
"id":123,
"name":"xiaoming"};
for(b in a){
document.getElementById("cc").innerHTML+=b+"<br />";
}
</script>
</body>
</html>

–采用对象[属性名]来进行遍历
b所对应的是对象a中的属性名

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<tittle>使用(.)来访问对象值</tittle>
</head>
<body>
<h1 id="cc"></h1>
<script>
var a,b;
a={
"id":123,
"name":"xiaoming"};
for(b in a){
document.getElementById("cc").innerHTML+=a[b]+"<br />";
}
</script>
</body>
</html>
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值