उपयोग करने के लिए एक ओर जहां यह 'के रूप में एक मूर्खतापूर्ण बयान किया जा रहा है', मैं निम्नलिखित दो काउंटरों पेश बताया गया है स्पष्ट:
(बस उनके पैर की उंगलियों पर लोगों रखने के लिए और सुदृढ़ करने के लिए जावास्क्रिप्ट के "स्पष्ट विवरण" हैं।)
1)
var
चर पहले से ही local
है। जैसे
function x (y) {
var y = y || 42 // redeclaration warning in FF, however it's "valid"
return y
}
x(true) // true
x() // 42
2)
var
समारोह चौड़ा एनोटेशन (यह शीर्ष करने के लिए "फहराया" है) और उपयोग के बिंदु पर नहीं एक घोषणा है।
var var1
if (!var1) {
var1 = []
}
:
function x() {
y = true
var y = y || 42
}
x() // true
मैं पूर्ववर्ती दोनों में से किसी की तरह कोड पसंद नहीं है, लेकिन ...
उत्थापन की वजह से
, और अनुमति दी फिर से घोषणाओं, पोस्ट में कोड इन अर्थ विज्ञान है
संपादित करें मुझे पता नहीं है कि एड.5 में "सख्त मोड" उपरोक्त को कैसे प्रभावित करता है।
स्रोत
2010-11-26 00:52:33
लक्ष्य को पूरा करने के लिए एक दिलचस्प तरीका है। लेकिन यह यादृच्छिक रूप से पहली जगह क्यों शून्य हो जाएगा? – TheLQ
@TheLQ: यह एक वैकल्पिक पैरामीटर हो सकता है। – SLaks
@ स्लक्स: लेकिन फिर इसे 'var' की आवश्यकता नहीं होगी, है ना? – cambraca