Каков наилучший способ сериализации объектов JavaScript в XML? - PullRequest
5 голосов
/ 14 января 2009

Я ищу лучший проверенный способ сериализации объектов JavaScript в XML, который можно было бы затем отправить на сервер в стиле Ajax.

Просто прибегая к помощи, я нашел несколько вариантов, таких как http://svn.mirekrusin.com/pub/javascript/to_xml/trunk/to_xml.js,, но кто-то доказал опыт и мог бы порекомендовать какую-нибудь конкретную библиотеку?

Ответы [ 2 ]

2 голосов
/ 12 мая 2009
0 голосов
/ 08 мая 2009

Я не знаю, есть ли фейерверки, которые сделают это для вас, но ...

// Define class constructor
var SampleObject1 = function()
{
    this.name = 'MySampleObject';
    this.id = 1;
    this.seed = 1.009;
    this.createdAt = new Date();
    this.obj = null;
};

// Create instance of serializer
var serializer = new Ant.Serializer();

// Register SampleObject1, so serializer gets to know how to deal with such objects
serializer.register('SampleObject1', SampleObject1);

// Create data that will be serialized
var object = new SampleObject1();
object.obj = new SampleObject1();

// Serialize and get string representation
var xml = serializer.save(object).toString();

// Displays (formatting is changed):
// <SampleObject1>
//  <name type="string">MySampleObject</name>
//  <id type="number">1</id>
//  <seed type="number">1.009</seed>
//  <createdAt>
//      <Date value="2007-7-26T20:31:24.156"/>
//  </createdAt>
//  <obj>
//      <SampleObject1>
//          <name type="string">MySampleObject</name>
//          <id type="number">1</id>
//          <seed type="number">1.009</seed>
//          <createdAt>
//              <Date value="2007-7-26T20:31:24.156"/>
//          </createdAt>
//          <obj/>
//      </SampleObject1>
//  </obj>
// </SampleObject1>
WScript.echo(xml);

// Displays: MySampleObject
WScript.echo(serializer.load(xml).name);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...