本文实例讲述了JS实现的JSON序列化操作。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>JOSN对象</title>
  <script>
    var book={
      title:"php 最佳实践",
      authors:['jack'],
      edition:3,
      year:2017
    };
    //JSON.stringify()有三个参数分别是json对象,过滤器(可以是数组or函数),是否在josn字符串中保留缩进(这个参数意义不大可忽略)
    var jsonText=JSON.stringify(book);
    var jsonText1=JSON.stringify(book,["title","year"]);
    var jsonText2=JSON.stringify(book,function (key,value) {
      switch (key){
        case "title":
          return "java 从入门到精通";
        case "year":
          return 2018;
        case "edition":
          return undefined;
        default:
          return value;
      }
    });
    console.log(jsonText);//{"title":"php 最佳实践","authors":["jack"],"edition":3,"year":2017}
    console.log(jsonText1);//{"title":"php 最佳实践","year":2017}
    console.log(jsonText2);//{"title":"java 从入门到精通","authors":["jack"],"year":2018}
    //JSON.parse(arg1,arg2) 可以接受2个参数一个是json字符串,一个是过滤函数
    var jsonObject=JSON.parse(jsonText);
    var jsonObject1=JSON.parse(jsonText,function(key,value){
      if(key==="year"){
        return 2019
      }else if(key==="title"){
        return "javascript 从入门到精通";
      }else{
        return value;
      }
    });
    console.log(jsonObject);//Object {title: "php 最佳实践", authors: Array(1), edition: 3, year: 2017}
    console.log(jsonObject1);//Object {title: "javascript 从入门到精通", authors: Array(1), edition: 3, year: 2019}
  </script>
</head>
<body>
</body>
</html>

运行结果:

JS实现的JSON序列化操作简单示例

PS:这里再为大家推荐几款相关的json在线工具供大家参考:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多关于JavaScript相关内容可查看本站专题:《JavaScript中json操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!