reserved word
किसी ऑब्जेक्ट के प्रॉपर्टी नाम के रूप में उपयोग किया जा सकता है?आरक्षित शब्दों का उपयोग संपत्ति के नाम के रूप में करते हुए,
यह समस्या अप्रत्यक्ष रूप से stackoverflow question पर अप्रत्यक्ष रूप से उठाई गई थी। जवाब @Squeegy द्वारा आम सहमति लग रहा था:
आप उन शब्दों का उपयोग कर सकते हैं, लेकिन केवल तार और नहीं आशुलिपि गुण के रूप में -जबकि मुझे लगता है कि @ सहायक list of reserved wordsfoo["class"]
शांत है, जबकिfoo.class
के लिए एक लिंक दे रही है नहीं है squeeky शायद इस क्षेत्र में मुझसे अधिक जानकार है और यह शायद, मुझे लगता है कि उसके निष्कर्ष गलत दो अंक पर आधारित है एक बुरा विचार कुछ स्थितियों में आरक्षित शब्दों का प्रयोग करने के लिए है:
आरक्षित शब्दों का परीक्षण उन्हें "शॉर्टेंड" गुणों के रूप में उपयोग करना
HTMLFormElement यह असंभव नहीं "आशुलिपि" में आरक्षित शब्द का उपयोग करने के लिए बनाता है
पहले, आरक्षित शब्द सूची का उपयोग कर, प्रत्येक एक संपत्ति के रूप में एक Object
और HTMLElement
, दोनों के रूप में जोड़ा गया है obj["word"]
और obj.word
, और उसके बाद obj["word"]
और obj.word
के रूप में पुनर्प्राप्त किया गया। 63 मामलों में से प्रत्येक में सभी आठ परीक्षण सही तरीके से काम करते थे।
दूसरा, HTMLFormElement इस कार्यों को जरूरी बनाता है क्योंकि यह शॉर्टंड नोटेशन का उपयोग करके अपने तत्वों में पुनर्प्राप्त होता है। यदि <input name='typeof' value='scalar' />
एक फॉर्म का तत्व है, तो form.typeof
== "स्केलर"।
मेरे अनुभव से, आरक्षित शब्द आमतौर पर डेटा को लगाया जाता है (उदाहरण के लिए, "निजी" नामक एक कॉलम, प्रोग्राम नहीं लगाया जाता है। जैसे ही वे JSON ऑब्जेक्ट्स को दूषित करते हैं, और वहां से इनपुट, और वहां से HTMLFormElement। सीधे शब्दों में, बिना किसी बड़ी मात्रा में (इम्हो अनावश्यक) काम करें, आरक्षित शब्दों को रखना असंभव है को शॉर्टंड में सही तरीके से काम करने के लिए मजबूर होना पड़ रहा है।
यह इन वास्तविक समस्याओं मुझे लगता है:
देखभाल विद्यमान गुण के साथ संघर्ष के लिए नहीं रखा जाना चाहिए, नहीं आरक्षित शब्दों
(कई यदि सभी नहीं) चर आरक्षित शब्द नहीं हो सकते
आरक्षित शब्दों का उपयोग गुणों के रूप में हो सकता है (लेकिन जरूरी नहीं) भ्रमित
तो इस निष्कर्ष सही है, सुरक्षित है कि संपत्ति के नाम के रूप में शब्द, और उन तक या तो तार या आशुलिपि के रूप में, ठीक है - जब तक एक छोटे से सामान्य ज्ञान स्थिति के लिए लागू किया जाता है?
इसका क्या अर्थ है 'form.typeof '? मेरा मतलब है, यह HTMLFormElement से कैसे संबंधित है? जेएस ऑब्जेक्ट की एक संपत्ति को कम से कम दो तरीकों से '[' prop '] 'और डॉट नोटेशन' .prop' के साथ एक्सेस किया जा सकता है। और इसका HTMLFormElement या DOM API या अन्य कुछ भी नहीं है। 'फॉर्म [' टाइपऑफ ']' बिल्कुल सामान्य है – user907860