100['toString'] //does not fail
100.toString //fails
क्यों?100.toString बनाम 100 ['toString']
100.toString 100.toString() के समान नहीं है। तो दूसरे मामले में मुझे फ़ंक्शन वापस लौटने के रूप में क्यों नहीं मिल रहा है?
100['toString'] //does not fail
100.toString //fails
क्यों?100.toString बनाम 100 ['toString']
100.toString 100.toString() के समान नहीं है। तो दूसरे मामले में मुझे फ़ंक्शन वापस लौटने के रूप में क्यों नहीं मिल रहा है?
दूसरी पंक्ति विफल हो जाती है क्योंकि इसे "100" के रूप में पार्स किया जाता है, इसके बाद "toString" होता है।
डॉट संकेतन का उपयोग करने के लिए, निम्न में से कोई भी काम करेगा:
(100).toString()
100.0.toString()
100..toString()
var a = 100;
a.toString()
:
(100).toString
100.0.toString
100..toString
var a = 100;
a.toString
आप कॉलtoString
समारोह की कोशिश कर रहे हैं, तो आप भी कोष्ठक में शामिल करने की आवश्यकता होगी
मैं ब्रांड्स का उपयोग करना पसंद करता हूं (या एक चर, अगर मेरे पास पहले से ही एक स्पष्ट रूप से है), क्योंकि विकल्प भ्रमित और अनजान हो सकते हैं।
इसके बजाय (100).toString
का उपयोग करें।
माता-पिता जाने का सबसे अच्छा तरीका है। आपको वही समस्या w/फ़ंक्शन परिभाषाएं भी मिली हैं।
function() {}.call() => fails
(function() {}).call() => succeeds
एक और उदाहरण: '100..toString()' रूप में अच्छी तरह से काम करता है के बाद से पहली अवधि संख्या के भाग के रूप में गिना जाता है, और संपत्ति का उपयोग कर सकते वाक्य रचना के हिस्से के रूप दूसरा। –
ध्यान दें कि '100' और' 100.0' समान नहीं हैं। – Gumbo
@ मैक्स, अच्छा बिंदु। यह बहुत मजेदार दिखता है, लेकिन मैं इसे भी जोड़ दूंगा। –