Week7——JSON

1.什么是JSON?

  JSON是JavaScript对象表示法,全称是JavaScript Objec Notation。它是存储和交换文本信息的语法,类似于XML。JSON是轻量级的文本数据交换格式,具有自我描述性,更易理解。它比XML更小、更快,更容易解析。

  JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。

2.与XML的类似之处和区别?

  类似之处:

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

  区别:

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

3.JSON的书写格式

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

  • JSON数组
{
"employees": [
    { "firstName":"Bill" , "lastName":"Gates" },
    { "firstName":"George" , "lastName":"Bush" },
    { "firstName":"Thomas" , "lastName":"Carter" }
]
}
  • JSON 对象在花括号中书写,对象可以包含多个名称/值对:

  { "firstName":"Bill" , "lastName":"Gates" }

  • "firstName":"Bill"该条类似于JavaScript的firstName="Bill"。 

4.JSON的值

  JSON 值可以是:

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

 

5.转换为JavaScript对象

  包含JSON语法的JavaScript字符串: 

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

  JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象。eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误:  

var obj = eval ("(" + txt + ")");

 

posted @ 2018-04-22 11:55  Jing0628  阅读(145)  评论(0编辑  收藏  举报