JS-JSON
来源:互联网 发布:google 财务分析软件 编辑:程序博客网 时间:2024/04/30 11:47
一、JSON
JSON:JavaScript Object Notation.JavaScript 对象表示法。
JSON 语法:
1、数据在名称/值对中
2、数据由逗号分隔
3、花括号保存对象
4、方括号保存数组
5、名称/值对之间或JSON 对象之间使用逗号分隔
示例一:单个JSON 对象
var milan={"name":"Milan","sex":"male","age":"0",};示例二:数组包含JSON 对象
var people=[{"name":"Milan","sex":"male","age":"0"},{"name":"Xiaoxia","sex":"female","age":'"1"}];示例三:JSON 对象包含数组
var info={"people":[{"name":"Milan","sex":"male","age":"1"},{"name":"Xiaoxia","sex":"female","age":"1"}]};
JSON 值可以是:
数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在方括号中)
对象(在花括号中)
null
JSON 特点:
从上面示例可看出,JSON 对象包含在花括号之间。同XML 一样,具有自描述性,但JSON 能使用内建立的JavaScript eval()方法进行解析,且读写速度更快。
简单读写示例:
<script>//直接创建JSON 对象var milan={"name":"Milan","sex":"male","age":"1"};//使用JSON 对象alert("创建的JSON 对象属性值为:"+"name:"+milan.name+" sex:"+milan.sex+" age:"+milan.age);milan.age=2;alert("age:"+milan.age);</script>浏览器显示:
对于示例二,访问数组中的JSON 对象语法同数组,如people[0]即是第一个JSON 对象。
二、JSON 对象
创建方法:
1、直接创建(上面示例)。
2、通过解析字符串得来:
(1)、JavaScript的eval("("+txt+")"):(不太建议)eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误:
<script>var txt='{"name":"Milan","sex":"male"}';//可使用多段字符串相加形式,但语法不能出错,否则无法解析var milanObject=eval("("+txt+")");//注意两个括号!</script>eval()函数会编译和执行任何JavaScript代码,所以可能会有安全问题。建议使用解析器。
(2)、JSON.parse(txt):即解析器解析得到。JSON 解析器只能识别JSON 文本,而不会执行其它代码。
说明:JSON 解析器需要浏览器的支持,对于有的低版本浏览器(如IE 8、火狐3.5、safari4等及以下版本)不支持,对此可引入库来解决。需要的库: https://github.com/douglascrockford/JSON-js
JSON 使用:
1、使用存放于外部的JSON对象:(引入后可直接使用)
<script src="dddd.json"></script>
实际上,.json可以是任何名字,只要与原文件名与格式一样就能读取,取格式名为json只是一个标准。JSON 的MIME (Multipurpose Internet Mail Extensions)类型为application/json。
2、html中使用JavaScript创建JSON对象。
- js json
- js json
- js json
- JS JSON
- JS JSON
- js--JSON
- js json
- 【JS】JSON
- JS-JSON
- js JSON
- js JSON
- js json
- JS---json
- js JSON
- js JSON
- JS JSON
- js json.js处理json
- JSON重要工具: json.js
- Medium 34题 Search for a Range
- HDU 1402 FFT模板题,求大数乘法
- android hook 框架 libinject2 简介、编译、运行
- [High.Performance.MySQL(3rd,2012.3)].Baron.Schwartz.之数据类型优化
- 上台阶 简单动态规划 或者 用循环
- JS-JSON
- 微信小程序,你怎么看?
- 启动页设置 iOS
- 依旧模仿
- Masonry使用总结
- [JSOI2008]星球大战StarWar
- <HeadFirst_jQuery> O'REILLY_Chap.1_jQuery入门
- poj3126 Prime Path(BFS水)
- rabbitmq结合spring实现消息队列优先级