• json解析与序列化


    JSON是什么

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它是基于javascript的一个子集。数据格式简单, 易于读写, 占用带宽小。是前后台数据交互最常见的一种数据格式。

    存储和交换文本信息的语法。  

    数据格式:简单值 、 对象 、数组

    JSON对象语法特点:没有变量声明,没有末尾的分号、属性名加双引号

    JavaScript字符串与JSON字符串的最大区别在于:JSON字符串必须使用双引号(单引号会导致语法错误)。

    解析:把JSON字符串数据结构解析为原生JavaScript对象值。 常用方法:eval()方法 eval('('+ str +')')    、  解析JSON.parse() 

    序列化:把JavaScript对象值序列化为JSON字符串  常用方法:JSON.stringify()

     1 //javascript对象
     2 var book = {
     3     title: "JavaScript",
     4     authors: [
     5             "Mr.Guo",
     6             "Mrs.An",
     7     ],
     8     edition: 1,
     9     year: 2015
    10 }; 
    11 //序列化 JSON.stringify()
    12 //js对象转化为JSON字符串
    13 var jsonText = JSON.stringify(book);
    14 var jsonText1 = JSON.stringify(book, ["title", "year"],4);  //过滤器 + 缩进
    15 console.log(jsonText);   //{"title":"JavaScript","authors":["Mr.Guo","Mrs.An"],"edition":1,"year":2015}
    16 console.log(jsonText1); 
    17 // {
    18 //     "title": "JavaScript",
    19 //     "year": 2015
    20 // }
    21 
    22 
    23 //javsccrpt数组,数组可以包含对象
    24 var array = [1,2,3,4,{
    25     title: "JavaScript",
    26     authors: [
    27             "Mr.Guo",
    28             "Mrs.An",
    29     ],
    30     edition: 1,
    31     year: 2015
    32 }];
    33 //序列化,js数组转化为JSON字符串
    34 var jsonArray = JSON.stringify(array);
    35 console.log(jsonArray); 
    36 //[1,2,3,4,{"title":"JavaScript","authors":["Mr.Guo","Mrs.An"],"edition":1,"year":2015}]
    37 
    38 
    39 //解析JSON.parse()
    40 //JSON字符串转化为javascript对象
    41 var jsObj = JSON.parse(jsonArray);
    42 var jsObj1 = JSON.parse(jsonText);
    43 console.log(jsObj);
    44 // [ 1,
    45 //   2,
    46 //   3,
    47 //   4,
    48 //   { title: 'JavaScript',
    49 //     authors: [ 'Mr.Guo', 'Mrs.An' ],
    50 //     edition: 1,
    51 //     year: 2015 } ]
    52 console.log(jsObj1);
    53 // { title: 'JavaScript',
    54 //   authors: [ 'Mr.Guo', 'Mrs.An' ],
    55 //   edition: 1,
    56 //   year: 2015 }
    57 
    58 //JSON字符串转化为javascript对象 59 //eval()方法 eval('('+ str +')') 60 var jsObj2 = eval('('+ jsonArray +')'); 61 console.log(jsObj2); 62 // [ 1, 63 // 2, 64 // 3, 65 // 4, 66 // { title: 'JavaScript', 67 // authors: [ 'Mr.Guo', 'Mrs.An' ], 68 // edition: 1, 69 // year: 2015 } ]
  • 相关阅读:
    数据库设计
    Java各类格式转换
    Linux下如何查看tomcat是否启动/系统日志等
    string去空格
    Tomcat
    linux下的显示有中国农历的日历ccal
    Linux命令
    JSP学习-02隐式对象
    jQuery 遍历
    jQuery 隐藏效果
  • 原文地址:https://www.cnblogs.com/guorange/p/7154088.html
Copyright © 2020-2023  润新知