是的,所以's kind of like you'重新序列化对象数据,而不是类数据 . 变量仍然存在,但关于类的元数据(即方法)没有被保留 .

一个解决方案可能是serialijse .

serialijse是一个简单的JavaScript持久性框架,它克服了JSON持久性的两个主要限制:serialijse很好地处理循环对象 . serialijse在反序列化时保留对象类 .

他们的第三个例子说明你的情况

// serializing an object with cyclic dependencies

function testing_javascript_serialization_objects_with_cyclic_dependencies() {

var Mary = { name: "Mary", friends: [] };

var Bob = { name: "Bob", friends: [] };

Mary.friends.push(Bob);

Bob.friends.push(Mary);

var group = [ Mary, Bob];

console.log(group);

// testing serialization using JSON.stringify/JSON.parse

try {

var jstr = JSON.stringify(group);

var jo = JSON.parse(jstr);

console.log(jo);

} catch (err) {

console.log(" JSON has failed to manage object with cyclic deps");

console.log(" and has generated the following error message", err.message);

}

// now testing serialization using serialijse serialize/deserialize

var str = s.serialize(group);

var so = s.deserialize(str);

console.log(" However Serialijse knows to manage object with cyclic deps !");

console.log(so);

assert(so[0].friends[0] == so[1]); // Mary's friend is Bob

}

testing_javascript_serialization_objects_with_cyclic_dependencies();

java 嵌套对象序列化_在javascript中将复杂的,嵌套的,用户定义的对象序列化为字符串...相关推荐

  1. c#将对象序列化为字符串和将字符串反序列化为对象

    asp.net开发中,页面间传值最长用到的是url显式传参,session,application和cookie传值等.对于复杂对象页面传值,如果不考虑性能影响的话,通常可以使用session或者ap ...

  2. 将对象序列化为字符串

    本文翻译自:Serialize an object to string I have the following method to save an Object to a file: 我有以下方法将 ...

  3. java 属性不序列化_怎样对带有不可序列化属性的Java对象进行序列化

    原标题:怎样对带有不可序列化属性的Java对象进行序列化 出于很多原因我们想使用自定义的序列化方法取代Java默认的机制.一个最常见的原因是提高性能,而另一个原因是有时候我们无法使用默认的序列化方法. ...

  4. java字符串序列化_java对象序列化为字符串

    1 场景 java对象某些时候,需要序列化成字符串存储在数据库中,需要的时候,再将字符串反序列化为java对象. 如使用shiro缓存分布式session,需要将session对象序列化成字符串存储在 ...

  5. java自定义类序列化_【java】面试官问我,如何实现一个自定义序列化

    通常离开内存的东西,如果需要存储或传输是需要序列化的,在java中要序列化是要实现Serializable的(或其子类),那不实现Serializable,如何实现一个自定义的序列化呢,我首先想到的是 ...

  6. java二叉树的序列化_二叉树的序列化和反序列化

    import java.util.LinkedList; import java.util.Queue; /** * 序列化和反序列化二叉树 * 先序.后序 * (中序不能实现) * 按层 */ pu ...

  7. java对象序列化为字符串

    文章目录 1 场景 2 应用 2.1 过程描述 2.2 字节数组.字符串转换 2.2.1 hex转码 2.2.2 base64转码 2.3 对象序列化字节数组 2.3.1 使用commons-lang ...

  8. Java生成pgp密钥对_在Javascript中生成PGP密钥对,并使用加密的PGP私钥对文本进行签名...

    我写的东西是 needs to do electronic signatures. 有些用户会像我这样的极客,并且已经拥有自己的PGP密钥.大多数人不会,也不会想要安装或维护它. 作为一种解决方案,我 ...

  9. JAVA script 循环 图片_深入分析JavaScript 事件循环(Event Loop)

    事件循环(Event Loop),是每个JS开发者都会接触到的概念,但是刚接触时可能会存在各种疑惑. 众所周知,JS是单线程的,即同一时间只能运行一个任务.一般情况下这不会引发问题,但是如果我们有一个 ...

最新文章

  1. SharpUpdater:开源的.NET桌面程序自动更新组件
  2. VS2010与.NET4系列 20.VS2010的JavaScript智能感知增强
  3. 中移动TD终端资助或只限五洋巨头
  4. Linux下udp程序怎么运行,Linux下UDP的连接程序示例(阻塞、非阻塞)
  5. 欢迎来到OpenGL的世界
  6. 20、21_链式法则、MLP(多层感知器模型)反向传播
  7. oracle虚拟机怎么装系统,Virtualbox怎么安装系统 VirtualBox虚拟机安装Win8系统教程 (3)...
  8. 【CodeForces - 349C】Mafia(思维模拟,优秀的二分)
  9. OpenCL 与 CUDA
  10. html没有插件怎么办,html网页包插件没有插入options.title
  11. SpringMVC获取response的问题
  12. 在jsp中使用smartupload组件上传文件- -
  13. matlab函数包_Matlab论文插图绘制的270种补充颜色
  14. 日料美食海鲜精品海报PSD分层模板,美味势不可挡
  15. 在苹果Mac上如何将zsh用作默认Shell?
  16. Java实战之管家婆记账系统(24)——项目总结
  17. 纺织服装外贸行业解决方案丨汇信外贸软件
  18. 一般图最大匹配问题-带花树开花算法
  19. 小案例 JavaScript-简易五子棋
  20. Qt Creator5.7添加qwt绘图插件之成功案例解析

热门文章

  1. 【公测中】阿里云发布国内首个大数据双活容灾服务,满足高要求大数据灾备场景...
  2. 堆、栈、方法区、静态代码块---Java
  3. 如何找到存在Ceph里面的文件
  4. Python之操作RabbitMQ
  5. 开放式创新改变世界——OpenStack生态系统将重新洗牌
  6. LeetCode——Rotate Image(二维数组顺时针旋转90度)
  7. 【AS3代码】访问/修改XML子元素和属性
  8. FilteredTextBoxExtender
  9. 请与计算机管理员联系,电脑的限制被取消,请与管理员联系 解决方案
  10. go加载python_人生苦短我用python(02)动态加载模块-Go语言中文社区