JSON: ​J​ava​S​cript ​O​bject ​N​otation(JavaScript 对象表示法)

JSON 是存储和交换文本信息的语法。类似 XML。

JSON 比 XML 更小、更快,更易解析。

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

它基于(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。

易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。


目录


​介绍 ​

​与 XML 相同之处​

​与 XML 不同之处​

​JSON 语法规则​

​JSON 值可以是​

​JSON.parse()​

​JSON.stringify()​

​浏览器支持​


介绍 

通过我们的编辑器,您可以在线编辑 JavaScript 代码,然后通过点击一个按钮来查看结果:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>孙叫兽的博客</title>
</head>
<body>
<h2>JavaScript 创建 JSON 对象</h2>
<p>
网站名称: <span id="jname"></span><br />
网站地址: <span id="jurl"></span><br />
网站 slogan: <span id="jslogan"></span><br />
</p>
<script>
var JSONObject= {
"name":"孙叫兽的博客",
"url"
"slogan":"一个助你成为全栈开发的网站"
};
document.getElementById("jname").innerHTML=JSONObject.name
document.getElementById("jurl").innerHTML=JSONObject.url
document.getElementById("jslogan").innerHTML=JSONObject.slogan
</script>

</body>
</html>

与 XML 相同之处



  • JSON 是纯文本
  • JSON 具有”自我描述性”(人类可读)
  • JSON 具有层级结构(值中存在值)
  • JSON 可通过 JavaScript 进行解析
  • JSON 数据可使用 AJAX 进行传输


与 XML 不同之处



  • 没有结束标签
  • 更短
  • 读写的速度更快
  • 能够使用内建的 JavaScript eval() 方法进行解析
  • 使用数组
  • 不使用保留字


JSON 语法规则

JSON 语法是 JavaScript 对象表示语法的子集。



  • 数据在名称/值对中
  • 数据由逗号分隔
  • 大括号保存对象
  • 中括号保存数组


JSON 值可以是



  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在中括号中)
  • 对象(在大括号中)
  • null



JSON.parse()

JSON 通常用于与服务端交换数据。

在接收服务器数据时一般是字符串。

我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。


      //例如我们从服务器接收了以下数据:


  1. ​{ "name":"sunjiaoshou", "alexa":10000, "site":"www.sunjiaoshou.com" }​
  2. ​//​​我们使用 JSON.parse() 方法处理以上数据,将其转换为 JavaScript 对象:
  3. ​var obj = JSON.parse('{ "name":"sunjiaoshou", "alexa":10000, "site":"www.sunjiaoshou.com" }');​


JSON.stringify()

JSON 通常用于与服务端交换数据。

在向服务器发送数据时一般是字符串。

我们可以使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串。


       //例如我们向服务器发送以下数据:


  1. ​var obj = { "name":"sunjiaoshou", "alexa":10000, "site":"www.sunjiaoshou.com"};​
  2. 我们使用 JSON.stringify() 方法处理以上数据,将其转换为字符串:
  3. ​var myJSON = JSON.stringify(obj);​


浏览器支持

主流浏览器都支持 JSON.stringify() 函数:



  • Firefox 3.5
  • Internet Explorer 8
  • Chrome
  • Opera 10
  • Safari 4