कहो मैं निम्नलिखित एपीआई बनाना चाहते हैं बनाओ ताकि इस काम करेगा:नई कीवर्ड वैकल्पिक
api().method();
मैं अपने सिर से बाहर करना होगा:
var api = function() {
if (!(this instanceof api)) {
return new api();
}
};
लेकिन मैं सोच रहा था, क्या यह आसानी से संक्रमित हो सकता है, या इस विधि का उपयोग करके अन्य खतरे हैं? मुझे पता है कि f.ex jQuery ऐसा नहीं करता है (वे एक प्रोटोटाइप विधि में कन्स्ट्रक्टर को ऑफ़लोड करते हैं), इसलिए मुझे यकीन है कि ऐसा करने के लिए कोई अच्छा कारण नहीं है। मैं बस उन्हें नहीं जानता।
आपका समाधान बिल्कुल ठीक दिखता है, मैंने देखा है कि कई स्थानों पर उपयोग किया जा रहा है। [यहां] देखें (http://ejohn.org/blog/simple-class-instantiation/), उदाहरण के लिए। – bfavaretto