JSON .stringify ()
JSON का एक सामान्य उपयोग किसी वेब सर्वर से/से डेटा का आदान-प्रदान करना है।
वेब सर्वर पर डेटा भेजते समय, डेटा को एक स्ट्रिंग होना चाहिए।
जावास्क्रिप्ट ऑब्जेक्ट को स्ट्रिंग में कनवर्ट करें JSON.stringify()
.
जावास्क्रिप्ट ऑब्जेक्ट को स्ट्रिंग करें
कल्पना कीजिए कि हमारे पास जावास्क्रिप्ट में यह वस्तु है:
const obj = {name: "John", age: 30, city: "New York"};
JSON.stringify()
इसे एक स्ट्रिंग में बदलने के लिए जावास्क्रिप्ट फ़ंक्शन का उपयोग करें ।
const myJSON = JSON.stringify(obj);
परिणाम JSON संकेतन के बाद एक स्ट्रिंग होगा।
myJSON
अब एक स्ट्रिंग है, और सर्वर पर भेजने के लिए तैयार है:
उदाहरण
const obj = {name: "John", age: 30, city: "New York"};
const myJSON =
JSON.stringify(obj);
आप अगले अध्यायों में जानेंगे कि JSON को सर्वर पर कैसे भेजा जाता है।
एक जावास्क्रिप्ट ऐरे को स्ट्रिंग करें
जावास्क्रिप्ट सरणियों को कड़ा करना भी संभव है:
कल्पना कीजिए कि हमारे पास जावास्क्रिप्ट में यह सरणी है:
const arr = ["John", "Peter", "Sally", "Jane"];
JSON.stringify()
इसे एक स्ट्रिंग में बदलने के लिए जावास्क्रिप्ट फ़ंक्शन का उपयोग करें ।
const myJSON = JSON.stringify(arr);
परिणाम JSON संकेतन के बाद एक स्ट्रिंग होगा।
myJSON
अब एक स्ट्रिंग है, और सर्वर पर भेजने के लिए तैयार है:
उदाहरण
const arr = ["John", "Peter", "Sally", "Jane"];
const myJSON =
JSON.stringify(arr);
आप अगले अध्यायों में सीखेंगे कि सर्वर पर JSON स्ट्रिंग कैसे भेजें।
आकड़ो का भंडारण किया जा रहा हैं
डेटा संग्रहीत करते समय, डेटा को एक निश्चित प्रारूप होना चाहिए, और इस पर ध्यान दिए बिना कि आप इसे कहाँ संग्रहीत करना चाहते हैं, पाठ हमेशा कानूनी स्वरूपों में से एक होता है।
JSON जावास्क्रिप्ट ऑब्जेक्ट्स को टेक्स्ट के रूप में स्टोर करना संभव बनाता है।
उदाहरण
स्थानीय भंडारण में डेटा संग्रहीत करना
// Storing data:
const myObj = {name: "John",
age: 31, city: "New York"};
const myJSON =
JSON.stringify(myObj);
localStorage.setItem("testJSON", myJSON);
// Retrieving data:
let text = localStorage.getItem("testJSON");
let obj =
JSON.parse(text);
document.getElementById("demo").innerHTML = obj.name;
अपवाद
कड़ी तिथियां
JSON में, दिनांक वस्तुओं की अनुमति नहीं है। JSON.stringify()
फ़ंक्शन किसी भी तारीख को स्ट्रिंग्स में बदल देगा ।
उदाहरण
const obj = {name: "John", today: new Date(), city : "New York"};
const myJSON = JSON.stringify(obj);
आप रिसीवर पर स्ट्रिंग को वापस डेट ऑब्जेक्ट में बदल सकते हैं।
स्ट्रिंग फ़ंक्शन
JSON में, ऑब्जेक्ट मानों के रूप में फ़ंक्शंस की अनुमति नहीं है।
JSON.stringify()
फ़ंक्शन जावास्क्रिप्ट ऑब्जेक्ट से किसी भी फ़ंक्शन को हटा देगा, कुंजी और मान दोनों :
उदाहरण
const obj = {name: "John", age: function () {return 30;}, city: "New York"};
const myJSON = JSON.stringify(obj);
इसे छोड़ा जा सकता है यदि आप फ़ंक्शन चलाने से पहले अपने कार्यों को स्ट्रिंग्स में परिवर्तित करते हैं JSON.stringify()
।
उदाहरण
const obj = {name: "John", age: function () {return 30;}, city: "New York"};
obj.age = obj.age.toString();
const myJSON = JSON.stringify(obj);
यदि आप JSON का उपयोग करके फ़ंक्शन भेजते हैं, तो फ़ंक्शन अपना दायरा खो देंगे, और रिसीवर को उन्हें वापस फ़ंक्शंस में बदलने के लिए eval() का उपयोग करना होगा।