JSON.parse & JSON.stringify का उपयोग करके JS सरणी को क्लोन करने के बाद, सरणी का "अपरिभाषित" मान "null" में क्यों परिवर्तित हो जाता है? [डुप्लिकेट]

Aug 17 2020
var arr1 = [1, 2, 3, undefined, 4, 5];
var arr2 = JSON.parse(JSON.stringify(arr1));
console.log(arr2);

उपरोक्त कोड का आउटपुट होगा ...।

[1, 2, 3, null, 4, 5]

यह "अपरिभाषित" से "अशक्त" के लिए 4 वाँ मूल्य क्यों परिवर्तित करता है?

जवाब

2 Iwrestledabearonce. Aug 17 2020 at 20:24

क्योंकि undefinedएक जावास्क्रिप्ट प्रकार है। undefinedJSON में कोई नहीं है।

युक्ति के अनुसार :

JSON चार आदिम प्रकारों (तारों, संख्याओं, बूलियन्स और नल) और दो संरचित प्रकारों (वस्तुओं और गिरफ्तारियों) का प्रतिनिधित्व कर सकता है।