इस कोड स्निपेट का विश्लेषण करके इस रहस्य को उजागर करें:
foo = [{id: 1}, {id: 2}, {id: 3}, {id: 4}, {id: 5},]; कंसोल.लॉग ('foo1', foo, foo.length); foo.splice (2, 1); Console.log ('foo2', foo, foo.length); [ऑब्जेक्ट, ऑब्जेक्ट, ऑब्जेक्ट, ऑब्जेक्ट, ऑब्जेक्ट] ५ 0: वस्तु 1: वस्तु 2: वस्तु 3: वस्तु लंबाई: 4 __proto__: सरणी [0] 5 (सूचकांक): 23 foo2 [ऑब्जेक्ट, ऑब्जेक्ट, ऑब्जेक्ट, ऑब्जेक्ट] ४ 0: वस्तु 1: वस्तु 2: वस्तु 3: वस्तु लंबाई: 4 __proto__: सरणी [0]
foo = [{id: 1},{id: 2},{id: 3},{id: 4}, {id: 5}, ]; console.log('foo1', foo, foo.length); foo.splice(2, 1); console.log('foo2', foo, foo.length);
एसिंक्रोनस परीक्षा
foo = [{id: 1},{id: 2},{id: 3},{id: 4}, {id: 5}, ]; console.log('foo1', foo, foo.length); foo.splice(2, 1); console.log('foo2', foo, foo.length);
इस व्यवहार को समझने की कुंजी कंसोल के माध्यम से ऑब्जेक्ट परीक्षा की अतुल्यकालिक प्रकृति में निहित है। जबकि कंसोल को ऑब्जेक्ट का एक संदर्भ समकालीन रूप से प्राप्त होता है, यह तब तक इसके गुणों को प्रदर्शित नहीं करता है जब तक आप इसे मैन्युअल रूप से विस्तारित नहीं करते हैं। यह अतुल्यकालिक रूप से होता है, प्रतीत होता है कि अतार्किक आउटपुट के लिए अग्रणी है। Console.log (obj.foo, obj.bar, obj.baz);)
एन्कोडिंग (जैसे, कंसोल.लॉग (json.parse (json.stringify (obj)));अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3