我在我的应用程序中有很多JavaScript对象,类似于:
function Person(age) {
this.age = age;
this.isOld = function (){
return this.age > 60;
}
}
// before serialize, ok
var p1 = new Person(77);
alert("Is old: " + p1.isOld());
// after, got error Object #<Object> has no method 'isOld'
var serialize = JSON.stringify(p1);
var _p1 = JSON.parse(serialize);
alert("Is old: " + _p1.isOld());
我的问题是:是否有最佳实践/模式/提示,可以恢复被序列化后的对象为与它之前相同的类型 (在本例中是Person类的实例)?
我需要的要求:
- 优化磁盘使用: 我在内存中有一个大的对象树。因此,我不想存储函数。
- 解决方案可以使用jQuery和另一个库来进行序列化/反序列化。