JSON数据格式

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()

  • 8
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值