前言:
最在再看一些之前项目中的代码,遇到了 JSON,感觉挺重要的,所以再这里总结一些,发现好多有用的博客,链接给大家
轻量级的数据交换格式,独立于语言的文本格式,使用类似于C语言家族的习惯——理想数据交换语言
其是JavaScript的一个子集,JavaScript:网络脚本语言,为网页添加动态功能,提供舒适的浏览效果,
JavaScript组成:
Dom:
动态地访问程序和脚本,更新其内容、结构和www文档的风格
bom:点击打开链接
描述对象间层次关系的模型,独立于内容、浏览器窗口进行互动的对象结构
JSON:
数据在键值(数字、“字符串”、逻辑值、[数组]、{对象}、null)对中
数据逗号分隔
{ }保存对象
[ ]保存数组
结构:
1、数据结构{key:value,key:value,……}多个更体现价值
{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"}
2、数组:["Java","javas]
"people":[
{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"},
{"firstName":"Jason","lastName":"Hunter","email":"bbbb"},
{"firstName":"Elliotte","lastName":"Harold","email":"cccc"}
]
与XML的区别
Jason串转对象
1>jQuery插件支持的转换方式:
$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象
2>浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器:
JSON.parse(jsonstr); //可以将json字符串转换成json对象
JSON.stringify(jsonobj); //可以将json对象转换成json对符串
3>Javascript支持的转换方式:
eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号
注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。
4>JSON官方的转换方式:
http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;
可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。
小结:
下面是自己做项目中用的的json当时不懂,现在通过阶段的学习慢慢的感觉熟悉多了
#region 转json
//作为传来的参数,获取学生考试信息并显示到界面
string jsonEntity = Request.Params["studentExamInfo"];
//从一个Json串生成对象
JavaScriptSerializer js = new JavaScriptSerializer();
vstudentexaminfoViewModel studentExamInfo = js.Deserialize<vstudentexaminfoViewModel>(jsonEntity);
#endregion
所以学习是一个反复的过程,重要的是多给自己反复的机会