版权所属:SOJSON(原创文章)
原文地址:https://www.sojson.com/json/json_syntax.html
JSON语法是 JavaScript 对象语法的子集。前面也说了,就是Javascript Object(Java Script Object Notation)
JSON 语法规则
- 数据在名称/值对中
- 数据由逗号分隔
- 花括号保存对象
- 方括号保存数组
JSON 名称/值对
JSON 数据的书写格式是:{Key:Value}、{Key:Array}。
{Key:Value},前面是键,中间是英文的“:”(冒号),然后是值。但是注意的是如果是字符串,严格来说都是英文双引号引起来的
如:{“Key”:“Value”}
{"name" : "李子柒"}
这很容易理解,等价于这条 JavaScript 语句:
name = "李子柒"
JSON 值范围
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在方括号中)
- 对象(在花括号中)
- null
JSON 对象
JSON 对象在花括号中,对象可以包含多个名称/值对,如下代码所示:
{
"name": "李子柒",
"age": 28,
"birthday": "1990年7月6日"
}
这一点也容易理解,与这条 JavaScript 语句等价:
name = "李子柒";
age = 28;
birthday = "1990年7月6日";
JSON 数组
JSON数组在方括号("[]")中书写,数组可包含多个对象,如下“star_male”描述
{
"star_male": [
{
"name": "鹿晗",
"age": "26"
},
{
"nickname": "李易峰",
"age": "29"
},
{
"nickname": "陈赫",
"lastName": "31"
}
]
}
在上面的例子中,对象 “star_male” 是包含三个对象的数组。每个对象代表一条关于一个明星(姓名和年龄)的记录。
JSON 使用 JavaScript 获取元素值
因为 JSON 使用 JavaScript 语法,所以无需额外的软件就能处理 JavaScript 中的 JSON。
通过 JavaScript,您可以创建一个对象数组,并像这样进行赋值:
栗子🌰:
var star_male = [
{
"name": "鹿晗",
"age": "26"
},
{
"name": "李易峰",
"age": "29"
},
{
"name": "陈赫",
"age": "31"
}
]
可以像这样访问 JavaScript 对象数组中的第一项(鹿晗):
var name = star_male[0].name;
alert(name);
由此我们得到的name是:
鹿晗
迭代获取Array里所有的值:
{
for(var i in star_male){
alert("name:" + star_male[i].name);
alert("age:" + star_male[i]['age']);//换个姿势
}
//再换个姿势,下面写法和上面的效果是一样的。
/*
for(var i=0;i <star_male.length;i++){
alert("name:" + star_male[i].name);
alert("age:" + star_male[i]['age']);//换个姿势
}*/
}
JSON 文件说明
JSON 文件的文件后缀是 “.json”,如:sojson.json
JSON 文本的 MIME 类型是 “application/json”