2009-01-14 30 views
5

Tôi đang tìm cách tốt nhất để tuần tự hóa các đối tượng JavaScript thành XML, có thể được gửi đến máy chủ hơn nữa theo kiểu Ajax.Cách tốt nhất để tuần tự hóa các đối tượng JavaScript thành XML là gì?

Chỉ cần googling tôi đã tìm thấy một số tùy chọn như http://svn.mirekrusin.com/pub/javascript/to_xml/trunk/to_xml.js, nhưng ai đó đã chứng minh được trải nghiệm và có thể đề xuất bất kỳ thư viện cụ thể nào không?

+0

là có một lý do để không sử dụng JSON? Nó là (a) có nguồn gốc từ javascript và (b) rất nhẹ, và (c) có các thư viện phân tích cú pháp/bộ mã hóa cho mọi ngôn ngữ. – yaauie

Trả lời

0

Tôi không biết nếu có fameworks sẽ làm việc này cho bạn, nhưng ...

// 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); 
Các vấn đề liên quan