2012-07-27 16 views
6

मैं इस तरह जावा स्क्रिप्ट कोड मिल गया है वापस नहीं करता है =>अज्ञात फ़ंक्शन हमेशा एक मूल्य

(function(){ 
    document.getElementById("element").onclick = function(){ 
     var r = confirm("Are you sure ?"); 
     if (r){ 
      return true; 
     } else { 
      return false; 
     } 
    } 
})(); 

इस स्क्रिप्ट काम करता है, लेकिन सिर्फ मेरे अधिसूचना के बारे में सख्त चेतावनी कि गुमनाम काम नहीं करेगी देता है हमेशा एक मान

मुझे इसका अर्थ है कि इसका अर्थ क्या है, मैं इसे कैसे रोक सकता हूं और इससे कोई समस्या हल हो जाएगी? कृपया कोई विचार? धन्यवाद :)

उत्तर

8

यह अज्ञात फ़ंक्शन की वजह से नहीं है, ऐसा इसलिए है क्योंकि else उस return के साथ अनावश्यक है। यदि आपको if कथन सत्य नहीं है तो डिफ़ॉल्ट return निष्पादित होने पर आपको फ़ंक्शन से बाहर निकलने की आवश्यकता नहीं है।

(function(){ 
    document.getElementById("element").onclick = function(){ 
     var r = confirm("Are you sure ?"); 
     if (r){ 
      return true; 
     } 
     return false; 
    } 
})(); 

संपादित करें:

रूप नीहारिकाओं इस भी कम किया जा सकता है ने कहा:

(function(){ 
    document.getElementById("element").onclick = function(){ 
     return confirm("Are you sure ?"); 
    } 
})(); 
+0

' वापसी की पुष्टि करने में मदद करने ("? क्या आपको यकीन है") है? – nebulae

+0

हां यह होगा, सिर्फ यह दिखाना चाहता था कि चेतावनी क्यों। – elclanrs

+0

तो यह चेतावनी दे रहा है क्योंकि अन्य में "वापसी" आम नहीं है, हां? – tnanoba

6

असल strict warning आप strict mode आप स्क्रिप्ट में लेकिन यदि सक्षम की वजह से हो रही है " सख्त उपयोग करें "आपकी स्क्रिप्ट में उपयोग नहीं किया जा रहा है, तो मुझे लगता है, जैसा कि आपने टिप्पणी में कहा था कि आप Komodo IDE का उपयोग कर रहे हैं और शायद आप Firefox Extension for Debugging स्थापित किया है जो जावास्क्रिप्ट डीबगिंग के ब्राउज़र-साइड घटक का समर्थन करने के लिए आवश्यक है।

यदि ऐसा है तो इसमें कुछ सेटिंग्स हैं जिन्हें आप एन्बल या अक्षम कर सकते हैं। strict mode warnings को अक्षम करने के लिए बस पर जाएं मेनू> प्राथमिकताएं> जावास्क्रिप्ट (श्रेणी से) संपादित करें और सक्षम सख्त चेतावनी संदेश को अनचेक करें। लेकिन strict mode का उपयोग करना एक अच्छा प्रोग्रामिंग अभ्यास है। कोई `वैसा ही प्रभाव पड़ेगा,; नीचे एक स्क्रीनशॉट आप

enter image description here

+2

है जबकि नाम थोड़ा उलझन में हैं , कोमोडो के "सख्त चेतावनी संदेश" का सख्त मोड से कोई संबंध नहीं है। वे दो अलग-अलग चीजें हैं। सख्त मोड वास्तव में आपके कोड के अर्थशास्त्र को बदलता है। कमोडो की सख्त चेतावनियां इस तरह की चीजों के बारे में अतिरिक्त चेतावनियां हैं; ये चेतावनियां किसी भी कोड पर लागू हो सकती हैं, भले ही यह सख्त मोड का उपयोग करे या नहीं। –

संबंधित मुद्दे