2010-05-12 17 views
5

Tôi là người mới thành JSON & vì vậy tôi không chắc chắn về phương tiện $.toJSON(params).Javascript - .toJSON

Vui lòng giải thích điều này.

+5

* cắn lưỡi * – Lazarus

+0

nó có thể là một số Mã của thư viện JS để chuyển đổi gì đó sang định dạng JSON .. – vsync

+0

http://www.json.org/json2.js, Đây là những gì bạn nên sử dụng khi giao dịch với JSON. – Anders

Trả lời

11

Nó có thể là này jQuery plugin

var myObj = {}; 
myObj.propA = "a"; 
myObj.propB = "b"; 
myObj.propC = "c"; 
var jsonString = $.toJSON(myObj); // same as jQuery.toJSON(myObj) 
// output: '{ "propA" : "a", "propB" : "b", "propC" : "c" }' 
+6

Rất có thể là plugin này, nhưng tại sao bạn sẽ sử dụng plugin đó trên 'json2.js' tôi không biết .... – gnarf

1

Chuyển biến số params làm đối số cho phương thức có tên toJSON được đính kèm với đối tượng được lưu trữ trong biến (unhelpfully named) $.

Dựa trên tên, nó có thể chuyển đổi nội dung của biến số params thành chuỗi được định dạng theo JSON specification.

5

Xem: http://www.json.org/js.html

Một JSON stringifier đi theo hướng ngược lại, chuyển đổi hoạt Javascript cấu trúc dữ liệu vào JSON văn bản. JSON không hỗ trợ các cấu trúc dữ liệu tuần hoàn, vì vậy hãy cẩn thận để không cung cấp các cấu trúc chu kỳ cho trình tạo chuỗi JSON.

var myJSONText = JSON.stringify(myObject, replacer); 

Nếu phương pháp stringify thấy một đối tượng có chứa một phương pháp toJSON, nó gọi phương pháp đó, và stringifies giá trị trả về. Điều này cho phép một đối tượng xác định biểu diễn JSON của riêng nó.

Phương pháp trình xâu chuỗi có thể lấy một chuỗi các chuỗi tùy chọn. Các chuỗi này được sử dụng để chọn các thuộc tính sẽ được bao gồm trong văn bản JSON.

Phương pháp trình mã hóa có thể có chức năng replacer tùy chọn. Nó sẽ được gọi sau phương thức toJSON (nếu có) trên mỗi giá trị trong cấu trúc. Nó sẽ được chuyển qua mỗi khóa và giá trị dưới dạng tham số, và điều này sẽ bị ràng buộc với đối tượng giữ phím. Giá trị trả lại sẽ được xâu thành chuỗi.

Vì vậy, nếu bạn có một phương pháp $.toJSON(), nó có thể là một badly implemented function để "stringify", hoặc nó có thể là một phương pháp mà trả về "JSON Đại diện" của $