首页 > 代码库 > josn初步

josn初步

  JSON:javascript对象表示法(javascript Object Notation);

  JSON 是轻量级的存储和交换文本信息的语法;

  json独立于语言;

  json文本格式在语法上与创建javascript对象的代码相同,无需解析器,javascript程序能够内建eval()函数,用json数据生成原生的javascript对象。

  

一、示例

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

<html>
<body>
<h2>在 JavaScript 中创建 JSON 对象</h2>

<p>
Name: <span id="jname"></span><br />
Age: <span id="jage"></span><br />
Address: <span id="jstreet"></span><br />
Phone: <span id="jphone"></span><br />
</p>

<script type="text/javascript">
var JSONObject= {
"name":"Bill Gates",
"street":"Fifth Avenue New York 666",
"age":56,
"phone":"555 1234567"};
document.getElementById("jname").innerHTML=JSONObject.name
document.getElementById("jage").innerHTML=JSONObject.age
document.getElementById("jstreet").innerHTML=JSONObject.street
document.getElementById("jphone").innerHTML=JSONObject.phone
</script>

</body>
</html>

二、特性 

类似 XML:

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

相比 XML 的不同之处:

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

为什么使用 JSON?

对于 AJAX 应用程序来说,JSON 比 XML 更快更易使用:

使用 XML

  • 读取 XML 文档
  • 使用 XML DOM 来循环遍历文档
  • 读取值并存储在变量中

使用 JSON

  • 读取 JSON 字符串
  • 用 eval() 处理 JSON 字符串

 

三、json语法

1、语法规则:

json语法是javascript语法的子集:

  数据在名称/值对中;

  数据由逗号分隔;

  花括号保存对象;

  方括号保存数组;

JSON名称/值对

JSON数据的书写格式是名称/值对。

“字段名称”:“值”

//JSON   
"firstName":"john"
//相当于javascript里的:
firstName:"john"

2、json的值  

  包括以下几中类型:

数字:整数或浮点数;

字符串:在双引号内;

逻辑值:true或false;

数组:在方括号内;

对象:在花括号呢;

null

3、json对象

JSON对象在花括号中书写;

对象可以包含多个名值对;

//json对象
{ "firstName":"John", "lastName":"Done" }
//相当于以下javascript对象
firstName:"John";
lastName:"Doe"

4、JSON数组  

JSON数组在方括号内书写:

数组可包含多个对象:

{
  employees:[
  {"firstName":"John","lastName":"Doe"},
  {"firstName":"Anna","lastName":"Smith"},
  {"firstName":"Peter","lastName":"Jones"},
    ]
}

  

5、JSOn使用javascript语法:

示例:

JSON使用javascript语法,通过javascript创建一个数组对象,并进行赋值:

var employees=[
{ "firstName":"Bill" , "lastName":"Gates" },
{ "firstName":"George" , "lastName":"Bush" },
{ "firstName":"Thomas" , "lastName": "Carter" }
]

//访问:
employees[0]:lastName;
//修改:
employees[0]:"Jobs";

  

四、JSON的使用:

1、把json文本转换为Javascript对象

  JOSN常见的用法之一是从web服务器上读取JSON数据(作为文件或者是HttpRquest),将JSON数据转换为javascript对象;在网页中使用该数据;

2、JSON解析器

  eval()函数可编译并执行javascript代码。

使用 JSON 解析器将 JSON 转换为 JavaScript 对象是更安全的做法。JSON 解析器只能识别 JSON 文本,而不会编译脚本。

在浏览器中,这提供了原生的 JSON 支持,而且 JSON 解析器的速度更快。

较新的浏览器和最新的 ECMAScript (JavaScript) 标准中均包含了原生的对 JSON 的支持。

Web 浏览器支持Web 软件支持
  • Firefox (Mozilla) 3.5
  • Internet Explorer 8
  • Chrome
  • Opera 10
  • Safari 4
  • jQuery
  • Yahoo UI
  • Prototype
  • Dojo
  • ECMAScript 1.5

josn初步