2012-02-15 10 views
5

मैं सर्वर पर कुछ डेटा भेजने के लिए एक jQuery पोस्ट विधि का उपयोग कर रहा हूं। JSON स्ट्रिंग को स्वयं बनाने के बजाय, मैं बस जावास्क्रिप्ट ऑब्जेक्ट का उपयोग करना चाहता हूं। जब मुझे रिटर्न स्ट्रिंग (JSON में) मिलती है तो मैं स्वचालित रूप से संबंधित जावास्क्रिप्ट ऑब्जेक्ट बनाना चाहता हूं। क्या यह संभव है?जेसनस्क्रिप्ट ऑब्जेक्ट को जेसन पर वापस करें और

अग्रिम धन्यवाद।

उत्तर

20

चेकआउट JSON.stringify() और JSON.parse() में JSON2 documentation

उदाहरण:

myData = JSON.parse(text); // from json string to js object 

var myJSONText = JSON.stringify(myObject, replacer); // js object to json string 
+0

ग्रेट प्लगइन, धन्यवाद! – Ipad

6

हां।

तो JSON ऑब्जेक्ट उपलब्ध है, आप का उपयोग कर सकते हैं:

var aString = JSON.stringify(anObject); 

JSON स्ट्रिंग में एक वस्तु को बदलने के लिए।

तुम भी

var obj = JSON.parse(aString) 

के साथ एक वस्तु में एक स्ट्रिंग में बदल सकते हैं सुनिश्चित करें कि JSON उपलब्ध है होने के लिए, आप आप डगलस Crockford के JSON2 library का उपयोग करना चाहिए इस फाइल https://github.com/douglascrockford/JSON-js

2

शामिल कर सकते हैं।

इस तरह, आप कर सकते थे:

var jsonString = JSON.stringify(obj); 

या

var Obj = JSON.parse(jsonString); 
+2

आप वैसे भी आधुनिक ब्राउज़र में ऐसा कर सकते हैं। JSON2 एक पॉलीफिल है (यद्यपि उपयोग करने लायक है) – Quentin

1

यदि आप jQuery.getJSON का उपयोग करते हैं तो आपको जेसन को स्ट्रिंग और पार्स करने की परवाह नहीं है, jquery यह आपके लिए करता है।

+0

वास्तव में जानना अच्छी बात है। वही है यदि आप डेटा टाइप के रूप में "json" के साथ $ .ajax का उपयोग करते हैं। – CronosS

+0

@ क्रोनोस, हाँ। 'getJSON' $ jaj "के साथ डेटा टाइप के रूप में $ .ajax के लिए सिर्फ एक लघुरूप है। –

संबंधित मुद्दे