javascript - How can I return a built-in function as a object property? -


यह कोड कुछ मामलों में काम करता है। यदि यह console.log देता है तो कॉल को p.out फ़ंक्शन ठीक है।

<पूर्व> फ़ंक्शन नोटिस (मोड) {this.debug = mode; This.out = (function () {if (mode) {if (window.console) {return console.log;} else {return alert;}} else {return notice.doNothing;}}} (मोड); } Var p = नया नोटिस ('1'); P.out ('कूल सहायता, ओह, हाँ!');

हालांकि, जब यह चेतावनी (या window.alert) देता है, मुझे एक त्रुटि मिलती है:

  त्रुटि: अपवाद अपवाद: [अपवाद ... "अवैध WrappedNative प्रोटोटाइप ऑब्जेक्ट पर ऑपरेशन "nsresult:" 0x8057000c (NS_ERROR_XPC_BAD_OP_ON_WN_PROTO) "स्थान:" जेएस फ़्रेम :: http: // .. :: :: & lt; TOP_LEVEL & gt;: रेखा 22 "डेटा: नहीं]  

और एक साधारण परीक्षण के रूप में, यह काम करता है:

  बाहर = (फ़ंक्शन () {वापसी चेतावनी;}) (); बाहर ('नमस्ते डोली');  

मैं obj.out को सही तरीके से काम करने के लिए कैसे प्राप्त कर सकता हूं जब इसकी सूचना सतर्क हो?

  वापसी कार्य (msg) {चेतावनी (जैसे कि "" पाठ ">  

संदेश); }


Comments

Popular posts from this blog

sql - dynamically varied number of conditions in the 'where' statement using LINQ -

asp.net mvc - Dynamically Generated Ajax.BeginForm -

Debug on symbian -