在这里推荐使用http://json.tongxiehui.net/ 这个在线解析jso格式
JSON 语法是 JavaScript 对象表示语法的子集。
-
数据在名称/值对中
-
数据由逗号分隔
-
花括号保存对象
-
方括号保存数组
下面我们来说一下json 的格式其实一般就是键值对的形式:"firstName":"John" 这样的基本格式
{ "firstName": "lint", "lastName": "zhang", "email": "nihao" }
看着这个的时候是感觉很像javascript 里面定义一个对象。
下面我们在来看json 数组的格式。
[ { "firstName": "lint", "lastName": "zhang", "email": "nihao" } ]
前面的这些都是给大家复习一下基础的。其实我们过多的还是关注使用。做web开发的可能都对后台数据和前台数据交互感觉比较麻烦,于是就有很多的技术关于前台和后台进行交互的。现在比较流行的一种方式就是使用json的格式进行交互的。可是你们认真的关注过后台经过json序列化过来的数据到底是什么样子的?是什么样子的格式了?
现在我们做一个简答 的例子:
List<Person> persons=new List<Person> { new Person(){Name="Lin",Age=23}, new Person(){Name ="Zhang",Age=24}, new Person(){Name="Tang",Age = 25} }; JavaScriptSerializer json=new JavaScriptSerializer(); return json.Serialize(persons);
然后我们在看看后台的到的数据时什么样子的啊。
然后我们在看看前台接受到的数据时什么样子的了."[{"Name":"Lin","Age":23},{"Name":"Zhang","Age":24},{"Name":"Tang","Age":25}]" 是json格式的字符数组。但是我们在js里面使用的话这个肯定不好用啊。于是我们要将这个转换为json对象。我们可以用过JSON.parse这个来进行转换,或者通过json2 这个插件来进行使用,具体怎么使用就看大家的了。到底转换后就是[Object, Object, Object]。具体怎么的使用我就不说了。其实这里面就有一个问题了为什么我们不直接使用json 字符数组了。到底字符数组和我们的对象到底差距是什么,我们在来看一个简单的例子:
// JSON字符串
var foo = '{ "prop": "val" }';
// 对象
var bar = { "prop": "val" }; 其实我们上面的这个JSON.parse这个函数起到的作用就是去掉了"[]"我们从后台传递回来的这个东西。
后台肯定不认识这个jsoN对象,于是我们在后台接受的时候这里面就需要做一定的处理了。我们就需要使用JSON.stringify
相对来说比较简单。但是里面有很多细节需要大家研究一下。以后打算没有星期写点。希望大家监督。。。。相互努力:明年计划:打算在放假前能够好好的梳理一下javascript.
下一章我们就讲将 $ajax