Когда я разбираю JSON-строковый результат объекта p1 обратно в другой объект p2, второй объект получает данные, связанные с первым объектом, но я не могу называть его никакими способами. Используя http://www.typescriptlang.org/Playground/, я пробовал следующее:
class Person
{
constructor(public name: string, public age: number) {
}
Age() { return this.age; }
}
// Create a person
var p: Person = new Person("One", 1);
// Create a second person from the JSON representation
// of the first (NOTE: assert it is of type Person!)
var p2: Person = <Person>JSON.parse(JSON.stringify(p));
document.writeln("Start");
document.writeln(p.name); // OK: One
document.writeln(p.Age()); // OK: 1
document.writeln(p2.name); // OK: One
document.writeln(p2.age; // OK: 1
document.writeln(p2.Age()); // ERROR: no method Age() on Object
document.writeln("End");
Как разобрать данные JSON и получить правильный объект Person?