जब जावास्क्रिप्ट "{}" को एक खाली ब्लॉक के रूप में व्याख्या करता है
जावास्क्रिप्ट में, जब घुंघराले ब्रेसिज़ की एक खाली जोड़ी "{}" होती है सामना होने पर, दुभाषिया शुरू में इसे एक खाली वस्तु के बजाय कोड के एक खाली ब्लॉक के रूप में व्याख्या करता है। यह व्यवहार भाषा के व्याकरण से उत्पन्न होता है, जहां "ब्लॉक" प्राथमिक कथन प्रकारों में से एक है।
ब्लॉक बनाम ऑब्जेक्ट लिटरल
जावास्क्रिप्ट एक ब्लॉक स्टेटमेंट को घुंघराले ब्रेसिज़ की जोड़ी जिसमें कथनों का एक सेट होता है। दूसरी ओर, ऑब्जेक्ट शाब्दिक अभिव्यक्तिस्टेटमेंट हैं और घुंघराले ब्रेसिज़ के भीतर संलग्न कुंजी-मूल्य जोड़े हैं।
व्याख्या नियम
जावास्क्रिप्ट पार्सर "{}" की व्याख्या को प्राथमिकता देता है एक ब्लॉक के रूप में क्योंकि यह एक वस्तु शाब्दिक की तुलना में अधिक विशिष्ट संरचना है। जब तक ब्रेसिज़ कुंजी-मान जोड़े को संलग्न नहीं करते हैं या "कॉन्स्ट" या "लेट" जैसे कीवर्ड से पहले नहीं होते हैं, तब तक उन्हें एक खाली ब्लॉक के रूप में माना जाएगा।
Node.js और Firebug के बीच विसंगतियां
जैसा कि दिए गए उत्तर में बताया गया है, Node.js और Firebug "{}" की व्याख्या कैसे करते हैं, इसमें अंतर है:
जैसा कि V8 (क्रोम का इंजन) और स्पाइडरमंकी (फ़ायरफ़ॉक्स का इंजन) से दिए गए कोड स्निपेट में दिखाया गया है, पार्सर शुरू में घुंघराले ब्रेसिज़ की जांच करता है और पाए जाने पर उन्हें ब्लॉक के रूप में पार्स करने के लिए आगे बढ़ता है।संक्षेप में, जावास्क्रिप्ट की व्याख्या एक खाली ब्लॉक के रूप में "{}" ब्लॉक स्टेटमेंट को प्राथमिकता देने वाले व्याकरण नियमों का पालन करता है। Node.js और Firebug के बीच विसंगतियां उनके अलग-अलग मूल्यांकन दृष्टिकोणों के कारण होती हैं, Node.js इसे एक अभिव्यक्ति के रूप में और Firebug को एक कथन के रूप में मानते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3