赞
踩
JSON数据格式
JSON:是一种轻量级的数据传输格式。
轻量级:约束性低,简单。
数据传输:作用是用来进行数据交换的。
格式:格式约定。
JSON的格式:
JSON的常见格式一:
{“key”:“value”}最简单的json格式 花括号包裹表示这是一个JSON对象 通过键值对进行组合 key:value
键和值必须用双引号包裹
{“key1”:“value1”,“key2”:“value2”…}这是具有多个键值的对象
常见格式二:
[{“Name”:“张三”,“Age”:“18”,“Address”:“河南”},{“Name”:“李四”,“Age”:“20”,“Address”:“河北”}]
一个JSON中包含多个对象,对象和对象之间用逗号隔开
常见格式三:
在对象中,某一个属性所对应的值是一个列表/集合/数组
{“Name”:“张三”,“Age”:“18”,“Address”:“河南”,“BookList”:[{“BookName”:“js”},{“BookName”:“c#”}]}
**序列化:将对象转化为可供传输的数据格式。
反序列化:将可供传输的数据格式转化为对象。
常用的数据传输格式有两种:JSON和XML**
<script> var str = '{"Name":"张三","Age":"24","Address":"陕西","BookList":[{"BookName":"Js"},{"BookName":"C#"}]}';//json同学给我的数据; //反序列化 JS中提供了两种方法; //<1>eval() <2> json.parse() console.log(str); var obj = JSON.parse(str); console.log(obj.BookList[0].BookName); var obj1 = eval("(" + str + ")"); console.log(obj.BookList[1].BookName); var str1 = '[{"Name":"张叔叔","Age":"34","Address":"北京"},{"Name":"李武","Age":"56","Adress":"上海"}]'; var obj2 = JSON.parse(str1); console.log(obj2[0].Name); //序列化: //js中的对象 var student = { Name: "张三" }; console.log(student.Name); //方法一:人工序列化 var jsonStr = "{\"Name\":\"" + student.Name + "\"}" //"{"Name"}" //" asdfasdfas\"df" console.log(jsonStr); //方法二:利用方法序列化 var jsonStr1 = JSON.stringify(student); console.log(jsonStr1); </script>
public partial class JsonDemo : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Student s = new Student(); //s对象是C#中的一个类 //如果希望传输这个S对象 那么需要将s进行序列化 //{"Name":"张三","Age":"18","Address":"河南","BookList":[{"BookName":"js"},{"BookName":"c#"}]} {"Name":"李四","Age":"20","Address":"河北"} } } public class Student { public string Name = "张三"; public int Age = 18; public string Address = "河南"; public List<Book> BookList; } public class Book { public string BookName; }
反序列化 JS中提供了两种方法;
<1>eval() <2> json.parse()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。