本文详细讲解了JSON的基本和详细用法,通过示例代码非常详细。对大家的学习或者工作都有一定的参考价值,有需要的朋友可以参考一下。
一、什么是JSON
1.JSON指的是JavaScript对象符号。2.JSON是一种轻量级的文本数据交换格式,比XML更小、更快、更容易解析。3.JSON独立于语言。4.JSON是自描述的,更容易理解。
注意:JSON使用JavaScript语法来描述数据对象,但是JSON仍然独立于语言和平台。JSON解析器和JSON库支持许多不同的编程语言。目前,很多动态编程语言(PHP、NET)支持JSON。
二、JSON和XML比较
1、与XML相同之处
1)JSON是纯文本。2)JSON是“自描述的”(人类可读)。3)JSON有层次结构(值中有值)。4)JSON可以用JavaScript解析。5)JSON数据可以使用AJAX传输。
2、与XML不同之处
1)没有结束标记。2)比XML短。3)比读写XML快。4)能够使用内置的JavaScript eval()方法进行解析。5)可以使用数组。6)不使用保留字。
3、为什么使用JSON
对于AJAX应用程序,JSON比XML更快更容易使用:
使用XML:
阅读XML文档。使用XML DOM遍历文档。读取该值并将其存储在一个变量中。
使用JSON
读取JSON字符串。用eval()处理JSON字符串。
三、JSON语法
JSON语法是JavaScript语法的子集。
1、语法规则
JSON语法是JavaScript对象表示语法的子集。
1)数据在名称/值对中。2)数据用逗号分隔。3)大括号保存对象。4)括号保存数组。
2、JSON名称/值对
JSON数据的书写格式是:名称/值对。
名称/值对包括字段名称(在双引号中),后跟一个冒号,然后是值:
姓名':'汤姆'
3、JSON值
JSON值可以是:
1)数字(整数或浮点数)。2)字符串(在双引号中)。3)逻辑值(真或假)。4)数组(括号内)。5)对象(在花括号中)。6)空.
4、JSON数字
JSON数字可以是整数或浮点数:
{ '年龄':30}
5、JSON对象
JSON对象是用花括号({})写的:
一个对象可以包含多个名称/值对:
{“姓名”:“张三”,“年龄”:24}
6、JSON数组
JSON数组写在括号中:
一个数组可以包含多个对象:
{
学生':[
{“姓名”:“张三”,“年龄”:24岁,
{ '姓名':'李四','年龄':25}
]
}
在上面的例子中,对象“student”是由三个对象组成的数组。每个对象代表一个学生的记录(姓名、年龄)。
7、JSON布尔值
JSON可以是真或假:
{'flag':true}
8、JSON null值
JSON可以设置空值:
{ '学生':null}
9、JSON使用JavaScript语法
因为JSON使用JavaScript语法,所以不需要额外的软件就可以用JavaScript处理JSON。
使用JavaScript,您可以创建一个对象数组并赋值,如下所示:
var student=[
{“姓名”:“张三”,“年龄”:24岁,
{ '姓名':'李四','年龄':25}
];
您可以像这样访问JavaScript对象数组中的第一项(索引从0开始)
学生[0]。姓名;
返回的内容是:张三
您可以像这样修改数据:
学生[0]。name=' tom
10、JSON文件
json文件的文件类型是。json。2)JSON文本的MIME类型是' application/json '。
四、JSON对象
1、对象语法
{“姓名”:“张三”,“年龄”:25}
JSON对象是用花括号({})写的。
一个对象可以包含多个键/值对。
键必须是字符串,值可以是合法的JSON数据类型(字符串、数字、对象、数组、布尔值或null)。
和keyvalue由冒号(:)分隔。
每个键/值对由逗号(,)分隔。
2、访问对象
可以用点号(。)来访问对象的值。
var myObj,x;
MyObj={'name ':'张三','年龄':24 };
x=my obj . name;
上面例子的产值:张三。
还可以使用方括号([])来访问对象的值。
var myObj,x;
MyObj={'name ':'张三','年龄':24 };
x=myObj[' name '];
上面的例子也输出了值:张三。
3、循环对象
您可以使用for-in来循环对象的属性,并使用方括号([])来访问属性的值:
Var myObj={'name ':'张三','年龄':24 };
for(my obj中的x){
document.getElementById('demo ')。innerHTML=myObj[x]' br ';
}
4、嵌套JSON对象
JSON对象可以包含另一个JSON对象:
学生={
姓名:'张三':
'年龄':24,
分数':{
C#高级编程',94年,
' SQL Server':83,
' Python':75
}
}
您可以通过使用点(.)或方括号([])。
例如:
X=student.score.c #高级编程;
//或者
Var=student.score ['C #高级编程'];
5、修改JSON对象的值
可以用点号(。)来修改JSON对象的值:
Student.score.C#高级编程=90;
您还可以使用方括号([])来修改JSON对象的值:
Student.score['C#高级编程']=90;
6、删除JSON对象的属性
我们可以使用delete关键字删除JSON对象的属性:
删除student.score.C#高级编程;
您还可以使用方括号([])来删除JSON对象的属性:
删除student.score['C#高级编程'];
五、JSON数组
1、数组作为JSON对象
['C# ',' Java ',' Python']
JSON数组写在括号里。
JSON中的数组值必须是合法的JSON数据类型(数字、字符串、对象、数组、布尔值或null)。
在JavaScript中,数组值可以是上述JSON数据类型或JavaScript表达式,包括函数、日期和未定义。
2、JSON对象中的数组
属性的值可以是一个数组:
var student={
姓名:'张三':
'年龄':24,
主题“:[”。NET ',' java ',' python']
}
您可以使用索引值来访问数组:
var x=student . subject[0];
3、循环数组
您可以使用for-in来访问数组:
对于(我在student.subject中){
x=student . subject[I]' br ';
}
您也可以使用for循环
for(int I=0;istudent . subject . length;i ) {
x=student . subject[I]' br ';
}
4、嵌套JSON对象中的数组
JSON对象中的数组可以包含另一个数组或另一个JSON对象:
学生={
姓名:'张三':
'年龄':24,
分数':[
{'.NET':91},
{'java':85},
{'python':79}
]
}
您可以使用for-in来循环访问数组。
for(我在student.score) {
x=' h1 ' student . score[I]'/h1 ';
}
5、修改数组值
您可以使用索引值来修改数组值:
student . score[1]=93;
6、删除数组元素
可以使用delete关键字删除数组元素:
删除student . score[0];
关于JSON的基本介绍和详细用法的这篇文章就到这里了。希望对大家的学习有帮助,也希望大家多多支持。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。