दिलचस्प पोस्ट
मैं एक नॉर्म जीआईटी रिपॉजिटरी को सामान्य में (इन-प्लेस) कैसे बदलूं? PHP के साथ HTTP कैश हेडर का उपयोग कैसे करें जावा लैम्ब्डा फ़ंक्शंस कैसे संकलित हो जाएंगे? अगर (झूठे) बनाम। जबकि (झूठे): अपरिवर्तनीय कोड बनाम मृत कोड जावा एफएक्स – क्या यह वास्तव में एक ब्राउज़र में तैनात किया जा सकता है? कैरेट का उपयोग करके पूरी तरह से प्रतिलिपि प्रस्तुत करने योग्य समानांतर मॉडल अपने स्वयं के डोमेन पर पते पर ईमेल नहीं भेज सकता प्रति प्रक्रिया सीपीयू और मेमोरी उपयोग ट्रैकिंग जावास्क्रिप्ट में पसंद किए गए फ़ंक्शंस या अनाम फ़ंक्शन का नाम दिया गया है? जेवीएम हीप मापदंडों CodeIgniter PHP मॉडल प्रवेश "आपके द्वारा निर्दिष्ट मॉडल का पता लगाने में असमर्थ" रिलेटिव लेआउट, एंड्रॉइड में परिपत्र निर्भरता मौजूद नहीं हो सकती? Qt5। QML में QWidget वस्तु एम्बेड करें एंड्रॉइड स्क्रीन निर्देशांक कैसे कार्य करता है? डिफ़ॉल्ट ईमेल क्लाइंट का उपयोग कर ईमेल कैसे भेज सकते हैं?

क्या ऐरे और ऑब्जेक्ट में स्पेस का हिस्सा है?

क्या जावास्क्रिप्ट में अल्पविराम मानक रहे हैं, या क्रोम और फ़ायरफ़ॉक्स जैसे अधिकांश ब्राउज़रों ने उन्हें बर्दाश्त किया है?

मैंने सोचा था कि वे मानक थे, लेकिन IE8 ने एक कोर्स का सामना करने के बाद इसका मतलब उठाया था कि IE का कोई समर्थन नहीं है इसका मतलब यह नहीं है कि यह मानक नहीं है।

यहां मेरा क्या मतलब है इसका एक उदाहरण है (पुस्तकों के अंतिम तत्व के बाद):

var viewModel = { books: ko.observableArray([ { title: "..", display: function() { return ".."; } }, { title: "..", display: function() { return ".."; } }, { title: "..", display: function() { return ".."; } }, // <--right there ]), currentTemplate: ko.observable("bookTemplate1"), displayTemplate: function() { return viewModel.currentTemplate(); } }; 

Solutions Collecting From Web of "क्या ऐरे और ऑब्जेक्ट में स्पेस का हिस्सा है?"

चश्मा: ECMAScript 5 और ECMAScript 3


ECMAScript 5 विनिर्देश में खंड 11.1.5 :

 ObjectLiteral : { } { PropertyNameAndValueList } { PropertyNameAndValueList , } 

तो हां, यह विनिर्देशन का हिस्सा है

अद्यतन: जाहिर है यह ईएस 5 में नया है। ES3 में (पृष्ठ 41), परिभाषा ही थी:

 ObjectLiteral : { } { PropertyNameAndValueList } 

Arrays literals ( अनुभाग 11.1.4 ) के लिए यह और भी रोचक है ( अपडेट: यह पहले से ही ES3 में मौजूद था):

 ArrayLiteral : [ Elisionopt ] [ ElementList ] [ ElementList , Elision_opt ] 

(जहां Elision_opt ऑप्ट है , जिसका अर्थ है कि Elision_opt वैकल्पिक है)

Elision के रूप में परिभाषित किया गया है

 Elision : , Elision , 

तो, एक सरणी की तरह शाब्दिक

 var arr = [1,2,,,,]; 

बिल्कुल कानूनी है यह दो तत्वों के साथ एक सरणी बनाता है, लेकिन सरणी की लंबाई को 2 + 3 = 5 निर्धारित करता है।

IE (आईई 9 से पहले) से बहुत ज्यादा उम्मीद नहीं है …

सिर्फ एक त्वरित अनुस्मारक / चेतावनी यह है कि यह उन क्षेत्रों में से एक है जिसमें JavaScript / ECMAScript मानक और JSON मानक भिन्न होता है; अनुगामी कॉमा जेएस में मान्य हैं लेकिन JSON में मान्य नहीं है

क्या मायने रखता है, आईई 7 देता है

 [1,].length --> 2 

जबकि फ़ायरफ़ॉक्स और क्रोम

 [1,].length --> 1 

आप जावास्क्रिप्ट के लिए विनिर्देश (उर्फ ECMA स्क्रिप्ट) यहां पा सकते हैं। आप पृष्ठ 63 पर सरणियों के लिए प्रासंगिक परिभाषा पा सकते हैं और फेलिक्स ने नोट किया है कि ऑब्जेक्ट की परिभाषा पृष्ठ 65 के बाद के कुछ पृष्ठों पर है।

हालांकि यह विनिर्देश कहता है कि अनुगामी होने के लिए ठीक है , मुझे नहीं पता कि यह कुछ संस्करणों को वापस देखकर सही होगा। जैसा कि आपने IE8 का उल्लेख किया है- यदि आप पीछे वाले अल्पविराम छोड़ देते हैं, तो क्रोम और एफएफ ने इसे ठीक कर दिया है।

क्रोम 52 पर:

 [1,].length --> 1 [1,2,].length --> 2 [].length --> 0 [,].length --> 1 <<<<=== OUHHHHH !!!! 

मुझे सिर्फ अल्पविराम से पीछे नहीं होना पसंद है लोग आमतौर पर ओपन सोर्स परियोजनाओं में उन्हें एक अन्य कम्यूटेटर द्वारा लिखे गए पंक्ति को मिटाने के लिए इस्तेमाल करते हैं। पायथन में एक ही प्रश्न देखें: https://stackoverflow.com/a/11597911/968988