Json 操作

Json简介:

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

JSON 是 JS 对象的字符串表示法,它使用文本表示一个 JS 对象的信息,本质是一个字符串。

var  obj = {a:  'Hello' , b:  'World' };  //这是一个对象,注意键名也是可以使用引号包裹的
 
var  json =  '{"a": "Hello", "b": "World"}' //这是一个 JSON 字符串,本质是一个字符串

Json和JS互转:

要实现从对象转换为 JSON 字符串,使用 JSON.stringify() 方法:
 
var  json = JSON.stringify({a:  'Hello' , b:  'World' });  //结果是 '{"a": "Hello", "b": "World"}'
要实现从 JSON 转换为对象,使用 JSON.parse() 方法:
 
var  obj = JSON.parse( '{"a": "Hello", "b": "World"}' );  //结果是 {a: 'Hello', b: 'World'}

JSON和XML的比较

可读性

JSON和 XML的可读性可谓不相上下,一边是简易的语法,一边是规范的标签形式,很难分出胜负。

可扩展性

XML天生有很好的扩展性,JSON当然也有,没有什么是XML可以扩展而JSON却不能扩展的。不过JSON在Javascript主场作战,可以存储Javascript复合对象,有着xml不可比拟的优势。

JSON的序列化和反序列化

1、json解析的方法有两种:eval()和parse()方法

eval() 较危险,不光解析了字符串,还解析了js方法,无论何时用eval()都是非常危险的。-----不建议使用
JSON.parse()较好,会解析出错误。

2.序列化和反序列化JSON.parse()和JSON.stringify()

JSON.parse();
作用:将JavaScript对象表示法的JSON字符串转换为对象(字符串转对象)
语法:JSON.parse(text [, reviver])
text 必选。 一个有效的 JSON 字符串。
reviver 可选。 一个转换结果的函数。 将为对象的每个成员调用此函数。
返回值:JSON对象 。

.net 中 JSON 的反序列化

using Newtonsoft.Json;
json 的反序列化:JsonConvert.DeserializeObject<List<RMCA_BITInfo>>(response.Content.ToString());
JSON 的反序列化 如果数据量非常大的话,这个操作非常耗时,同时内存会飙升。
当数据量很大的时候 不建议使用json的反序列化。


猜你喜欢

转载自www.cnblogs.com/sunShineJing/p/9106311.html
今日推荐