JSON简介: 

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

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

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

一个简单的JSON实例:  

{
"student": [
{ "name":"张三" , "sex":"男" },
{ "name":"李四" , "sex":"男" },
{ "name":"王二麻子" , "sex":"女" }
]
}

 JSON语法

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

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

JSON 值可以是:

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

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

一个例子:

{"name":"张三"}

可以同过以下两种方法获取对象的值:

var student,x;
student={"name":"张三","sex":"M"}
x=student["name"];//通过([""])
x=student.sex;//通过(.)

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

一个例子:

{
"student": [
{ "name":"张三" , "sex":"男" },
{ "name":"王二麻子" , "sex":"女" }
]
} 
//student是包含两个对象的数组。

JSON 使用 JavaScript 语法,所以无需额外的软件就能处理 JavaScript 中的 JSON。通过 JavaScript,可以创建一个对象数组,并像这样进行赋值:

var student= [
{ "name":"张三" , "sex":"男" },
{ "name":"李四" , "sex":"男" },
{ "name":"王二麻子" , "sex":"女" }
]

访问数组的元素可以用下面方法:

student[0].name;//返回张三
student[1].sex="女";//修改数据

JSON.parse() 

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

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

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

JSON.parse()有两个参数,第一个是必须的有效的JSON字符串,第二个是可选的函数,会为每个对象成员调用这个函数。

例如:

var obj=JSON.parse('{"name":"李四","sex":"男"}')//这里注意传入的是字符串

JSON.stringify() 

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

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

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

同样,JSON.stringify()有三个参数,第一个必须的有效的JSON对象,第二个可选的用于转换结果的函数或者数组,第三个可选的文本添加缩进、空格和换行符,而如果是一个数字的话,则返回值文本在每个级别缩进指定数目的空格。如果 space 大于 10,则文本缩进10个空格。

var student={"name":"张三","sex":"男"};
var str=JSON.stringify(student);
document.getElementById("01").innerHTML=str;

eval() 函数

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

var student='{"name","张三","sex":"M"}'
var obj = eval ("(" + student + ")");

JSON笔记整理的更多相关文章

  1. java笔记整理

    Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...

  2. NPM 学习笔记整理

    NPM 学习笔记整理 阅读 550,2017年06月04日 发布,来源:blog.ihoey.com 什么是 NPM npm 之于 Node ,就像 pip 之于 Python , gem 之于 Ru ...

  3. Three入门学习笔记整理

    一.官方网站:https://threejs.org 二.关于Three.js 三.开始 四.实例 基本结构 结果 五.概念 坐标系 场景 相机 灯光 3D模型 六.简单动画 七.交互控制 结束 # ...

  4. 运维开发笔记整理-Django模型语法

    运维开发笔记整理-Django模型语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模型基本概念 1>.什么是模型 模型是你的数据唯一的,权威的信息源.它包含你所存储数 ...

  5. 运维开发笔记整理-django日志配置

    运维开发笔记整理-django日志配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Django日志 Django使用python内建的logging模块打印日志,Pytho ...

  6. 运维开发笔记整理-JsonResponse对象

    运维开发笔记整理-JsonResponse对象 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.使用HttpResponse发送json格式的数据 1>.HttpRespo ...

  7. 运维开发笔记整理-Request对象与Response对象

    运维开发笔记整理-Request对象与HttpResponse对象 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.request对象 1>.什么是request 首先,我 ...

  8. 布客·ApacheCN 翻译/校对/笔记整理活动进度公告 2020.1

    注意 请贡献者查看参与方式,然后直接在 ISSUE 中认领. 翻译/校对三个文档就可以申请当负责人,我们会把你拉进合伙人群.翻译/校对五个文档的贡献者,可以申请实习证明. 请私聊片刻(52981514 ...

  9. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

随机推荐

  1. python基础之数字、字符串、列表、元组、字典

    Python基础二: 1.运算符: 判断某个东西是否在某个东西里面包含: in  为真 not in  为假 (1).算术运算符: 运算符 描述 实例 + 加  表示两个对象相加 a + b输出结果3 ...

  2. Oracle 学习笔记(六)

    Oracle 数据库常用的闪回sql 语句及其它操作语句: --Oracle 数据库dml sql -- 查看当前用户所拥有的表 select * from tab; --表空间,auto: 自动管理 ...

  3. c++ :

    (1)表示机构内位域的定义(即该变量占几个bit空间)   typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; XXX

  4. 46.Scrapy框架结构

    Scrapy的介绍:Scrapy是基于Twisted的异步处理框架,是纯python语言实现的爬虫框架,特点是架构清晰,模块间耦合度低.扩展性强较为灵活. 框架结构如图所示: Engine:引擎,处理 ...

  5. Python:笔记1_字符串处理【转载】

    [转载自:https://www.cnblogs.com/houht/p/3308634.html] 1. 判断字符串str是否为空Approach 1:如果字符串长度为0,说明字符串为空,code如 ...

  6. 分布式计算课程补充笔记 part 4

    ▶ 并行通讯方式: map 映射 全局一到一 全局单元素计算操作 transpose 转置 一到一 单元素位移 gather 收集 多到一 元素搬运不计算 scatter 分散 一到多 元素搬运不计算 ...

  7. 10. 批量插入List<String>

    List<String> iscBusOrgIdList = getIscOrgIdList();List<Map<String, Object>> iscBusO ...

  8. Git 版本管理使用说明。

    1.回滚: git log :查看log日志 commit_id:  git reset –-soft <commit_id>:回退到某个版本,只回退了commit的信息,不会恢复到ind ...

  9. subString(index,end) 用法

    sb = sb.Substring(0, sb.Length - 1); 获取当前字符串的前一部分去掉最后一个字符

  10. Adjacent Bit Counts(01组合数)

    Adjacent Bit Counts 4557 Adjacent Bit CountsFor a string of n bits x 1 , x 2 , x 3 ,..., x n , the a ...