उदाहरण के लिए:जावास्क्रिप्ट में किसी ऑब्जेक्ट प्रकार का नाम बदलना संभव है?
Object.prototype.toString.call(new Date); // [object Date]
Object.prototype.toString.call(new Array); // [object Array]
Object.prototype.toString.call(new Object); // [object Object]
अब इस पर विचार करें:
var PhoneNumber = function(number) {
this.number = number;
}
मैं toString()
विधि ओवरराइड कर सकते हैं, लेकिन ऐसा नहीं वास्तव में ऑब्जेक्ट प्रकार का नाम बदलने करता है। यह सिर्फ थोड़े नकली:
PhoneNumber.prototype.toString = function() {
return '[object PhoneNumber]';
}
new PhoneNumber().toString(); // [object PhoneNumber]
हालांकि, l33t h4x0rs पता चलेगा कि मेरा toString()
विधि एक झूठ है और मैं एक n00b हूँ:
Object.prototype.toString.call(new PhoneNumber); // [object Object]
मैं परिणाम चाहते हैं क्या हो सकता है, की परवाह किए बिना
Object.prototype.toString.call(new PhoneNumber); // [object PhoneNumber]
यह संभव है: toString()
विधि प्रोटोटाइप पर ओवरराइट जा रहा है?
मैं यह काम कर दिया;) – CoderPi