Json
来源:互联网 发布:淘宝女鞋品牌 编辑:程序博客网 时间:2024/06/06 03:35
1、Json格式:键值对;
键可以是字符串也可以数字;
值可以是字符串也是可以是数值,还可以是数组;
2、Json对象和json字符串的区别:
json字符串是json对象的string形式,也就是string,但是符合json对象的格式,是指使用双引号”“或单引号”包括的符合json格式要求的字符串;
例如:
var str1 = '{ "name": "张三", "sex": "男" }'; var str1 = "{ "name": "张三", "sex": "男" }";
json对象时指符合json格式要求的js对象;
例如:
var str2 = { "name": "张三", "sex": "男" };
3、Json两种结构
对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构,例如:
var str2 = { "name": "张三", "sex": "男" };
在面向对象的语言中,key为对象的属性,value为对应的属性值,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
数组:数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,”javascript”,”vb”,…],取值方式和所有语言中一样,
使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
{ "people": { "chinese": [ { "name": "张三", "age":15 }, { "name": "李四", "age": null } ]}
4、js中操作Json对象和Json字符串的方法
4.1、JSON.stringify()方法:stringify()用于从一个对象解析出字符串例如:
图1和图2显示str1是一个json对象
图3和图4显示str1是一个json对象,利用JSON.stringify()将对象转换成了字符串。
4.2、JSON.parse()方法:parse()用于从一个json格式的字符串解析出json对象(或者var object= jsonstr.parseJSON(); 和var object= $.parseJSON(jsonstr);)例如:
图5和图6,可以看出str1是一个json格式的字符串;
图7和图8和图9,可以看出str1是一个json格式的字符串;利用JSON.parse()可以将字符串转为json对象,并且可以用对象的key来获取value,格式是object.key;
4.3、eval()方法:eval()可以将json字符串转换成json对象;eval('(' + jsonstr + ')'); 注意需要在json字符串外包裹一对小括号
由图10和图11看出,在只是一个单纯的json字符串时,如果不加一对小括号,会报错,而如果这个json字符串在一个json数组中,即时只有一个元素,利用eval()时,就不需要包裹一对小括号;
由图12和图13看出,在只是一个单纯的json字符串时,在json字符串外加一对小括号(这个括号,也可以加在eval()方法内),就不会报错了,如果一个json数组有多个元素时,利用eval()时,加不加一对小括号都不会有问题。
- Json
- JSON
- JSON
- JSON
- json
- JSON
- JSON
- json
- Json
- json
- JSON
- json
- json
- JSON
- json
- JSON
- JSON
- json
- HTTP协议简述
- 生产者消费者问题 这是一个非常经典的多线程题目,题目大意如下:有一个生产者在生产产品,这些产品将提供给若干个消费者去消费,为了使生产者和消费者能并发执行,在两者之间设置一个有多个缓冲区的缓冲池,生产者
- lintcode, 两个排序数组的中位数
- mybatis+oracle添加一条数据并返回所添加数据的自增列
- 勾股定理一日一证连载176
- Json
- repo sync配合manifest下载旧版本代码
- c++的函数
- 【framework】EventLog分析
- Jsonp
- 8位数据越界处理
- 延时、丢包、抖动,用尽洪荒之力也传不到,该怎么办?
- 润乾报表jboss性能优化
- 哈夫曼树的创建和操作