JavaScript में JSON के साथ काम करना: पार्सिंग और सीरियलाइज़ेशन शुरुआती के लिए

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

JSON और JavaScript का परिचय

\n

JSON (JavaScript Object Notation) एक हल्का डेटा एक्सचेंज फॉर्मेट है, जो वेब एप्लिकेशन में क्लाइंट और सर्वर के बीच संचार का मानक बन गया है। अपनी सादगी और पठनीयता के कारण, JSON का उपयोग हर जगह किया जाता है: कॉन्फ़िगरेशन फ़ाइलों से लेकर API अनुरोधों तक। इस लेख में, हम Node.js में JSON के साथ काम करना, पार्सिंग (स्ट्रिंग को ऑब्जेक्ट में बदलना) और सीरियलाइज़ेशन (ऑब्जेक्ट को स्ट्रिंग में बदलना) सीखेंगे। यह सामग्री उन शुरुआती डेवलपर्स के लिए है जो JavaScript की मूल बातें जानते हैं।

\n\n

JSON क्या है और इसकी आवश्यकता क्यों है?

\n

JSON एक टेक्स्ट-आधारित फॉर्मेट है, जो JavaScript ऑब्जेक्ट सिंटैक्स पर आधारित है। हालांकि, JSON केवल एक स्ट्रिंग है जिसे नेटवर्क पर भेजा जा सकता है या फ़ाइल में स्टोर किया जा सकता है। JSON में मुख्य डेटा प्रकार:

\n
    \n
  • स्ट्रिंग्स (डबल कोट्स में)
  • \n
  • नंबर्स (पूर्णांक और दशमलव)
  • \n
  • बूलियन वैल्यू (true/false)
  • \n
  • null
  • \n
  • ऐरे
  • \n
  • ऑब्जेक्ट्स (कुंजियाँ डबल कोट्स में)
  • \n
\n

एक मान्य JSON स्ट्रिंग का उदाहरण:

\n
{\n  "name": "अन्ना",\n  "age": 28,\n  "isStudent": false,\n  "skills": ["JavaScript", "Node.js"],\n  "address": null\n}
\n

सामान्य JavaScript ऑब्जेक्ट के विपरीत, JSON में सख्त सिंटैक्स होता है: सभी कुंजियाँ और स्ट्रिंग वैल्यू डबल कोट्स में होती हैं, और कमेंट्स की अनुमति नहीं है।

\n\n

JSON पार्सिंग: JSON.parse()

\n

JSON स्ट्रिंग को JavaScript ऑब्जेक्ट में बदलने के लिए JSON.parse() मेथड का उपयोग किया जाता है। यह तब आवश्यक है जब आप सर्वर से डेटा प्राप्त करते हैं, फ़ाइल पढ़ते हैं, या उपयोगकर्ता इनपुट प्रोसेस करते हैं।

\n\n

पार्सिंग का बेसिक उदाहरण

\n
const jsonString = '{"name": "राहुल", "age": 30}';\nconst user = JSON.parse(jsonString);\nconsole.log(user.name); // राहुल\nconsole.log(user.age);  // 30
\n\n

ऐरे को पार्स करना

\n
const jsonArray = '[1, 2, "तीन", true]';\nconst arr = JSON.parse(jsonArray);\nconsole.log(arr[2]); // तीन
\n\n

पार्सिंग एरर को हैंडल करना

\n

अमान्य JSON एक SyntaxError अपवाद उत्पन्न करेगा। अविश्वसनीय डेटा के साथ काम करते समय हमेशा try...catch का उपयोग करें:

\n
try {\n  const invalid = '{"name": "गलती}';\n  const result = JSON.parse(invalid);\n} catch (error) {\n  console.error('पार्सिंग में त्रुटि:', error.message);\n}
\n

आप दूसरा आर्गुमेंट — एक reviver फंक्शन भी पास कर सकते हैं, जो पार्सिंग के दौरान वैल्यू को बदलने की अनुमति देता है:

\n
const json = '{"date": "2024-01-15", "count": "42"}';\nconst obj = JSON.parse(json, (key, value) => {\n  if (key === 'date') return new Date(value);\n  if (key === 'count') return Number(value);\n  return value;\n});\nconsole.log(obj.date.getFullYear()); // 2024\nconsole.log(typeof obj.count);       // number
\n\n

JSON सीरियलाइज़ेशन: JSON.stringify()

\n

उल्टी प्रक्रिया — JavaScript ऑब्जेक्ट को JSON स्ट्रिंग में बदलना — JSON.stringify() के माध्यम से की जाती है। यह सर्वर पर डेटा भेजने, फ़ाइल में सेव करने या लॉगिंग के लिए आवश्यक है।

\n\n

सीरियलाइज़ेशन का सरल उदाहरण

\n
const user = {\n  name: 'प्रिया',\n  age: 25,\n  isAdmin: true\n};\nconst json = JSON.stringify(user);\nconsole.log(json);\n// {"name":"प्रिया","age":25,"isAdmin":true}
\n\n

आउटपुट को फ़ॉर्मेट करना

\n

यह मेथड तीन पैरामीटर लेता है: वैल्यू, रिप्लेसिंग फंक्शन (या फ़ील्ड्स की ऐरे) और इंडेंटेशन के लिए स्पेस की संख्या:

\n
const data = {\n  id: 1,\n  title: 'लेख',\n  tags: ['js', 'json']\n};\n// 2 स्पेस के इंडेंट के साथ\nconst prettyJson = JSON.stringify(data, null, 2);\nconsole.log(prettyJson);\n/* आउटपुट:\n{\n  "id": 1,\n  "title": "लेख",\n  "tags": [\n    "js",\n    "json"\n  ]\n}\n*/
\n\n

फ़ील्ड्स को फ़िल्टर करना

\n

दूसरा पैरामीटर उन कुंजियों की ऐरे हो सकता है जिन्हें परिणाम में शामिल करना है:

\n
const user = {\n  name: 'अमित',\n  password: 'secret12                

ब्लॉग

पुस्तक अनुशंसाएँ