JSON学习笔记

来源:互联网 发布:php开源电商系统 知乎 编辑:程序博客网 时间:2024/06/07 06:21

简介

JSON:JavaScript 对象表示法(JavaScript Object Notation)。

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


特点

  • 是轻量级的文本数据交换格式。
  • 独立于语言 。
  • 具有自我描述性,更易理解。
  • 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。

JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。
由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。


语法规则

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

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

名称/值对

JSON 数据的书写格式是:名称/值对。
名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值,如:

"name" : "lvxinpeng"

JSON值

JSON 值可以是:

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

JSON 对象

JSON 对象在花括号中书写:
对象可以包含多个名称/值对,如:

{ "name" : "lvxinpeng" , "sex" : "male"}

JSON 数组

JSON 数组在方括号中书写:
数组可包含多个对象,如:

"students" :[{"name" : "lvxinpeng" , "sex" : "male"},{"name" : "xiaopeng" , "sex" : "male"},{"name" : "xiaoxin" , "sex" : "female"}]

JSON文本转换为JavaScript

创建包含 JSON 语法的 JavaScript 字符串:

var students = '{ "students" :['{"name" : "lvxinpeng" , "sex" : "male"},' +'{"name" : "xiaopeng" , "sex" : "male"},' +'{"name" : "xiaoxin" , "sex" : "female"}] }';

使用eval()方法转换:

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