JavaScript学习笔记(9.6)
迪丽瓦拉
2025-05-31 12:05:44
0

JSON

JSON是Javascript对象标记法

JSON是一种轻量级的数据交换格式

JSON具有自我描述且易于理解

为什么使用JSON:因为JSON格式仅仅是文本,它能够轻松地在服务器浏览器之间传输,并用作任何编程语言的数据格式。

JavaScript提供内建函数把以JSON格式写的字符串转换为JavaScript对象:

JSON.parse()

因此,如果以JSON格式从服务器接收数据,那么可以像JavaScript对象一样使用它。

JSON语法规则

(1)数据在名称/值对中

(2)数据由逗号分割

(3)花括号容纳对象

(4)方括号容纳数组

"name":"mez"  //(1)

JSON名称需要双引号。而JavaScript名称不需要。

JSON格式几乎等同于JavaScript对象

在JSON中,键必须是字符串,由双引号包围

而在JavaScript中,键可以是字符串、数字或标识名称:

name:"mez"      //javascript

JSON值

在JSON中,值必须是以下数据类型之一:

字符串、数字、对象(JSON对象)、数组、布尔、null

而在JavaScript中,不仅包括上述类型,还包括:

函数、日期、undefined

在JSON中,字符串必须由双引号编写。

而在JavaScript中,字符串可以由双引号和单引号编写。

JSON使用JavaScript语法

因为JSON语法由JavaScript对象标记法衍生而来,所以很少需要其他额外的软件来处理JavaScript中的JSON。

通过JavaScript,可以创建对象并向其分配数据:

var person =  { name : "mez", age : 12, city : "Shanghai" };

可以使用person.name访问JavaScript对象,或者person["name"]

可以直接对JavaScript进行赋值来修改数据

person.name = "Steve Jobs";
//或
person["name"] = "Steve Jobs";

JSON文件的文件类型是“.json”

JSON文本的MIME类型是“application/json”

JSON.parse()

JSON的常规用途是同web服务器进行数据传输。

在从web服务器接收数据时,数据永远是字符串

通过JSON.parse()解析数据,这些数据会成为JavaScript对象。




Document



 



Document

 来自服务器的JSON

可以使用Ajax请求从服务器请求JSON。

只要服务器的响应是用JSON格式编写的,就可以将字符串解析成JavaScript对象



Document

 

 作为JSON数组

在对衍生数组的JSON使用JSON.parse()后,此方法将返回JavaScript数组,而不是JavaScript对象

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function()  {if (this.readyState == 4 && this.status == 200) {myArr =  JSON.parse(this.responseText);document.getElementById("demo").innerHTML  = myArr[0];}
};
xmlhttp.open("GET", "json_demo_array.txt", true);
xmlhttp.send();//json_demo_array.txt内容
[ "porsche", "BMW", "Volvo", "Audi" ]

相关内容