एक कन्स्ट्रक्टर को फ़ंक्शन के रूप में कॉल करने के लिए एक पुरानी चाल (that I learned on SO) है, यानी new
कीवर्ड भूलना। निम्नलिखित, या कुछ ऐसा, यह शीर्ष पर प्रत्येक कन्स्ट्रक्टर में जाता है।इस उदाहरण के लिए कठोर मोड विकल्प arguments.callee
if (!(this instanceof arguments.callee)) {
throw Error("Constructor called as a function");
}
आपको "use strict";
की आवश्यकता होने पर क्या विकल्प हैं?
क्या इसकी सामान्य प्रकृति को बनाए रखा जा सकता है? या क्या हमें arguments.callee
के स्थान पर कन्स्ट्रक्टर के नाम का उपयोग करना है?