मैं hava JSON ऑब्जेक्ट:जावास्क्रिप्ट अपवाद: Uncaught TypeError: JSON के लिए परिपत्र संरचना परिवर्तित
[#1={id:"2012-05-04", title:"Scheduled", start:(new Date(1336096800000)), source:{events:[#1#], className:[]}, _id:"2012-05-04", _start:(new Date(1336089600000)), end:null, _end:null, allDay:true, className:[]}]
मैं इसे stringify करने की कोशिश:
var test = JSON.stringify(resourceVacation, censor(resourceVacation));
function censor(censor) {
return (function() {
var i = 0;
return function(key, value) {
if (i !== 0 && typeof(censor) === 'object' && typeof(value) == 'object' && censor == value)
return '[Circular]';
++i; // so we know we aren't using the original object anymore
return value;
}
})(censor);
}
मैं सेंसर का उपयोग यहाँ उल्लेख किया: Chrome sendrequest error: TypeError: Converting circular structure to JSON n
हालांकि मुझे ब्राउज़र पर निम्नलिखित अपवाद मिलता है:
मैं मोज़िला ब्राउज़र में toSource() का उपयोग कर पिछले JSON ऑब्जेक्ट है:
यहाँ जावा स्क्रिप्ट वस्तु है। कोई विचार यह कैसे ठीक करें !!
============================ अद्यतन ================= 1 -Initially: =======
असल में मैं तुम्हारे साथ शुरू से ही scnerio साझा करने की आवश्यकता मैं एक रूप है और अंत में मैं जावा स्क्रिप्ट वस्तु का निर्माण जो है:
#1=[{id:"2012-05-03", title:"Scheduled", start:(new Date(1336010400000)), source:{events:#1#, className:[]}, _id:"2012-05-03", _start:(new Date(1336003200000)), end:null, _end:null, allDay:true, className:[]}]
इस वस्तु सामान्य रूप से stringified है ... ध्यान दें कि यह "एक है कि बाद में अपवाद से निकाल देते थे करने के लिए ठेठ एस।
2- फिर ला Ter मैं का उपयोग कर इस सरणी से वस्तुओं को हटा दें:
function deleteVacation(day) {
for (var index = 0; index < resourceVacation.length; index++) {
if (resourceVacation[index].id == day)
resourceVacation.splice(index,1);
}
3-जब मैं उस सरणी stringify करने के बाद मैं एक ही वस्तु को नष्ट कर दिया की कोशिश, मैं उल्लेख अपवाद मिलता है। तो .. एयू विचार पहली बार क्यों पारित हुआ और दूसरी बार विफल रहा !!
अपने JSON को मान्य करें। यह अमान्य प्रतीत होता है: http://www.jsonlint.org –
दरअसल जो मेरे पास पहले से है वह ऑब्जेक्ट की सरणी है और मैंने उस जेसन को पाने के लिए obj.toSource() का उपयोग किया। – Echo
मैंने अपनी पोस्ट अपडेट की है। अगर आपको कोई चिंता है तो कृपया मुझे वापस खिलाएं। – Echo