重建JSON序列化的对象
Rebuilding an object serialized in JSON
在我的web应用程序中,我使用JSON.stringify()序列化存储对象,如下所述。这很棒,我可以很容易地从JSON字符串重新创建对象,但是我丢失了所有对象的方法。是否有一种简单的方法可以将这些方法添加回我忽略的对象中—可能涉及到原型,这是我不太熟悉的东西?
或者仅仅是我自己创建一个精细的函数来做这件事?
编辑:理想情况下,我正在寻找类似的东西:
Object.inheritMethods(AnotherObject);
调用JSON后获得对象。解析,你有很多选择。下面是一些例子。
- Mixin
- 有许多技术可以做到这一点,本文很好地描述了这些技术。但是,这里有一个简单的示例,它不需要任何新的语言特性。请记住,对象本质上只是一个映射,因此JS使向对象添加附加属性变得容易。
var stuffToAdd = function() { this.name = "Me"; this.func1 = function() { print(this.name); } this.func2 = function() { print("Hello again"); } } var obj = JSON.parse("{}"); stuffToAdd.call(obj);
原型
使用对象。Felix提到的create方法。由于这只在ES5中提供,所以您可能需要使用shim来保证其可用性。
老问题,但我今天搜索这个问题时发现了它。我在其他地方找到了一个解决方案和更新(ES6):
对象。assign(new myclass(), jsonString);
相关文章:
- 序列化数据属性中对象的最可靠方法
- 是否可以在javascript中反序列化java对象
- 对象序列化,JAVA,Javascript
- 如何使用angularjs序列化对象
- 如何在C#中反序列化json对象
- Typescript,序列化类对象
- 是否可以在不序列化的情况下将对象从SilverLight传递到JavaScript
- 添加到序列化数组中的复杂对象在服务器端始终为 null
- 将 JSON 对象转换为序列化字符串以进行服务器端处理
- 如何在 GET 请求中序列化查询的对象
- 为什么JSON对象序列化是需要的或重要的发送ajax调用到服务器
- JSON.stringify没有序列化对象
- 如何在JavaScript中序列化对象
- 是否可以序列化Ace会话对象
- 序列化具有方法的自定义对象.序列化后删除的方法-要采取的步骤
- Javascript 对象序列化函数
- Javascript对象序列化可读
- 使用嵌入对象序列化HTML表单
- 用图像对象序列化和反序列化画布(Fabricjs)
- Java对象序列化和转换为JSON