当前位置:首页 > 编程教程 > javascript技术文章 > JS实现的JSON序列化操作简单示例

JS实现的JSON序列化的代码

  • 发布时间:
  • 作者:码农之家
  • 点击:137

这篇文章主要知识点是关于JS、JSON、序列化、javascript、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

JavaScript忍者秘籍
  • 类型:JavaScript大小:83.5 MB格式:PDF作者:莱西格
立即下载

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

本文实例讲述了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序列化操作简单示例

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

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

JSON序列化 相关电子书
学习笔记
网友NO.886552

PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析

本文实例讲述了PHP中SERIALIZE和JSON的序列化与反序列化操作区别。分享给大家供大家参考,具体如下: PHP中SERIALIZE和JSON序列化与反序列化区别是什么呢,对于这个问题我们可以和小编一起来看看,具体的操作细节如下所示。 在PHP中,serialize和json两种方式对一个对象或数组进行序列化或反序列化有什么区别呢? 假设一个对象和一个数组: $web = new stdClass;$web-site = 'tantengvip';$web-owner = 'tuntun';$web-age = 5;//和$web = array();$web['site'] = 'tantengvip';$web['owner'] = 'tuntun';$web['age'] = 5; 对它们分别用serialize函数和unserialize函数进行序列化和反序列化,看看打印结果分别是什么,如下: 使用serialize方式: var_dump(serialize($web));var_dump(unserialize(serialize($web)));var_dump(json_encode($web));var_dump(json_decode(json_encode($web))); 结果: string 'O:8:"stdClass":3:{s:4:"site";s:10:"tantengvip";s:5:"owner";s:6:"tuntun";s:3:……

网友NO.309054

jquery序列化form表单使用ajax提交后处理返回的json数据

1、返回json字符串: /** 将一个字符串输出到浏览器 */ protected void writeJson(String json) { PrintWriter pw = null; try { servletResponse.setContentType("text/plain;charset=UTF-8"); pw = servletResponse.getWriter(); pw.write(json); pw.flush(); pw.close(); } catch (IOException e) { e.printStackTrace(); } finally { if (pw != null) { pw.close(); } } } 2、通过eval将返回的json字符串转换成json对象: $.ajax({ data:{ "shipmmsi":shipmmsi, "shipname":shipname }, url : "shipbk/findShipMMSIAndName.do", async : true, type : "POST", success : function(data) { var ships = eval('(' + data + ')'); $("#bindShipmmsiDiv table tbody").html(""); if(ships!=null){ if(ships.length){ $("#bindShipmmsiDiv").show(); var trs=""; for(var i=0;iships.length;i++){ trs+="trtd"+ships[i].mmsi+"/tdtd"+ships[i].vesselName+"/td/tr"; } $("#bindShipmmsiDiv table tbody").append(trs); //给tr注册点击事件 $("#bindShipmmsiDiv table tbody tr").click(function(){ $(this).addClass('select_tr').s……

网友NO.380782

Django model序列化为json的方法示例

本文环境 Python 3.6.5 Django 2.0.4 fix(2018.5.19):最近得知Django 的model基类需要声明为abstract,故在原来的代码加入abstract声明,以免误导 在Django中,关于如何将model类序列化为json,一般的话有两a器 将model类转为字典,再使用json库的dumps方法转为json 第一种方法就不多讲了,直接去看官方文档就好啦 一般来说,官方提供的方法应该都是比较好用和稳定的,然而,使用官方的序列化器却问题不少: 格式丑陋,格式如下,一言难尽: [ { "pk": "4b678b301dfd8a4e0dad910de3ae245b", "model": "sessions.session", "fields": { "expire_date": "2013-01-16T08:16:59.844Z", ... } }] 是的,其中pk指的是默认主键,model指的是该object的model类型,然后fields才是obj的各种字段...真的是不知如何评价了 不能很好地支持list 对于一些外键(包括ManyToManyField等)不是很友好 甚至对于自身的DateField也没有很好的支持 数……

网友NO.562844

jackson 实体转json 为NULL或者为空不参加序列化(实例讲解)

使用jackson进行序列化时,往往会遇到后台某个实体对象的属性为null,当序列化成json时对应的属性也为null;这样在某些前端组件上应用该json对象会报错。(例如:echarts) 下面总结了两种方法,解决了当属性为null时不参与序列化: 方法一: 1.实体上使用如下注解 @JsonInclude(Include.NON_NULL) 将该标记放在属性上,如果该属性为NULL则不参与序列化 ;如果放在类上边,那对这个类的全部属性起作用。 具体取值有: //Include.Include.ALWAYS 默认 //Include.NON_DEFAULT 属性为默认值不序列化 //Include.NON_EMPTY 属性为 空(“”) 或者为 NULL 都不序列化 //Include.NON_NULL 属性为NULL 不序列化 注:使用了该注解,那么在import时需要把一下两个类引入到源文件中 import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; 2.代码上使用如下方法: ObjectMapper mapp……

网友NO.415149

JSON PHP中,Json字符串反序列化成对象/数组的方法

如下所示: ?php//php反编码解析json信息//json_decode(json字符串);$city = array('shandong'='jinan','henan'='zhengzhou','hebei'='shijiazhuang');$jn_city = json_encode($city);//反编码json$fan_city = json_decode($jn_city,false);//第二个参数false则返回object类型,false可以默认不写var_dump($fan_city);//object(stdClass)#1 (3) { ["shandong"]= string(5) "jinan" ["henan"]= string(9) "zhengzhou" ["hebei"]= string(12) "shijiazhuang" } echo "br /";$fan_city = json_decode($jn_city,true);//第二个参数true则返回array类型var_dump($fan_city);//array(3) { ["shandong"]= string(5) "jinan" ["henan"]= string(9) "zhengzhou" ["hebei"]= string(12) "shijiazhuang" } 手动写的JSON字符串一定要用单引号才能成功反序列化成对象/数组: ?php //json信息反编码 //不同php版本,对“纯json字符串”解析存在问题 //使用双引号定义的json字符串反编码操作变为null //$jn = "{'name':'tom','age':'20','addr':'beijing'}"; //$fan_jn ……

<
1
>

Copyright 2018-2020 www.xz577.com 码农之家

投诉 / 推广 / 赞助:QQ:520161757