2013-04-28 4 views
20

Существуют ли какие-либо средства для сериализации/десериализации JSON для объектов Postscript, чтобы они не теряли информацию о типе? Простой JSON.parse(JSON.stringify) имеет слишком много оговорок.Сериализация объектов машинописных имен?

Или я должен использовать решения adhoc?

ответ

21

использовать интерфейсы для получения сильных типов:

// Creating 
var foo:any = {}; 
foo.x = 3; 
foo.y='123'; 

var jsonString = JSON.stringify(foo); 
alert(jsonString); 


// Reading 
interface Bar{ 
    x:number; 
    y?:string; 
} 

var baz:Bar = JSON.parse(jsonString); 
alert(baz.y); 

И использовать утверждение типа «<>», если вам нужно.

+3

Вы создаете интерфейсы для своих моделей вместо классов или создаете как классы, так и интерфейсы? –

+0

Этот подход теряет методы –

Смежные вопросы