我的应用程序中有许多 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());
请参阅JS Fiddle。
我的问题是:是否有最佳实践/模式/技巧来恢复我的对象在序列化之前的相同类型(在这种情况下是 Person 类的实例)?
我的要求:
- 优化磁盘使用:我在内存中有一个很大的对象树。所以,我不想存储功能。
- 解决方案可以使用 jQuery 和另一个库来序列化/反序列化。