ES6 में, यदि मैं कक्षा बना देता हूं और उस वर्ग का ऑब्जेक्ट बनाता हूं, तो मैं यह कैसे जांचूं कि ऑब्जेक्ट उस वर्ग है?ES6 में, आप किसी ऑब्जेक्ट की कक्षा को कैसे देखते हैं?
मैं केवल typeof
का उपयोग नहीं कर सकता क्योंकि ऑब्जेक्ट्स अभी भी "object"
हैं। क्या मैं सिर्फ रचनाकारों की तुलना करता हूं?
उदाहरण:
class Person {
constructor() {}
}
var person = new Person();
if (/* what do I put here to check if person is a Person? */) {
// do stuff
}
यूप, पूरी तरह से भूल गए! यह काम करता है जैसे कार्यों के साथ (क्योंकि कक्षाएं सिर्फ काम करती हैं!)। धन्यवाद! – Ivan
यह सही उत्तर नहीं है। यदि आपके पास ए, बी, सी कक्षाएं और बीएंड सी ए बढ़ाती है, तो (नया बी()) उदाहरण सी सी सच हो जाता है। – someUser
@someUser: 'नया बी() उदाहरण ए' जावास्क्रिप्ट में विरासत की सबसे उचित परिभाषा है। यदि आप पाते हैं कि आप इसे 'बी' और' सी' के लिए प्राप्त करते हैं, तो आपकी समस्या यह है कि आपने वास्तव में 'सी' से 'बी' प्राप्त किया है जब आप इरादा नहीं चाहते थे। आप अपनी विरासत को कैसे कार्यान्वित कर रहे हैं? – Eric