में किसी उदाहरण का उदाहरण कैसे बनाते हैं, मैं अलग-अलग लोगों को पकड़ने वाली कारों के सेट के अनूठे उदाहरण बनाना चाहता हूं। कारों में समान आधार चश्मा होंगे लेकिन उनकी कुछ संपत्तियां और विधियां अलग-अलग होंगी।आप जावास्क्रिप्ट
मेरी समस्या यह है कि मैं काम नहीं कर सकता कि यह कैसे काम करना चाहिए। जावास्क्रिप्ट में उदाहरणों के उदाहरणों के साथ आप कैसे निपटते हैं या बनाते हैं?
var Car = function(make, country) {
this.make = make;
this.country = country;
};
var Ferrari = new Car('Ferrari', 'Italy');
var fred = new Person() {};
var fred.cars['Ferrari'] = new Ferrari(1200, 300000);
यह स्पष्ट कारणों से इस त्रुटि का कारण बनता है। मुझे पता है कि यह एक कन्स्ट्रक्टर नहीं है (नीचे देखें)।
Uncaught TypeError: Ferrari is not a constructor
जो मैं ढूंढ रहा हूं वह ऐसा कुछ है। फेरारी के प्रत्येक अलग-अलग उदाहरण में एक अलग मूल्य और मिलेज होगा।
var Ferrari = function(currentPrice, miles) }
this.currentPrice = currentPrice;
this.miles = miles;
// this is an instance of car, aka it needs the result of this:
// new Car('Ferrari', 'Italy');
};
फ्रेड का फेरारी फेरारी का एक उदाहरण है, जो कार का एक उदाहरण है। समस्या यह है कि मैं कन्स्ट्रक्टर को कन्स्ट्रक्टर बनाने का तरीका नहीं सोच सकता। क्या ऐसा करने का कोई तरीका है, या क्या मैं इस बारे में गलत तरीके से जा रहा हूं?
अन्य नोट्स:
मैं जानता हूँ कि मैं अनिवार्य रूप से सिर्फ कार के प्रत्येक प्रकार के एक स्थिर JSON जैसी वस्तु बनाने और फिर उस के उदाहरण बनाने के लिए और नए अनन्य मानों जोड़ सकते हैं। हालांकि, मैं कार को एक कन्स्ट्रक्टर के रूप में रखने में सक्षम होना चाहता हूं ताकि जब मुझे आवश्यकता हो तो मैं आसानी से और अधिक कर सकता हूं।
मैं स्पष्ट रूप से यहाँ OOP या जावास्क्रिप्ट की कुछ समझ याद आ रही है, लेकिन यह अगर किसी ने मुझे सही दिशा में बात कर सकता है बहुत अच्छा होगा।
'फेरारी' एक सबक्लास होना चाहिए, उदाहरण के लिए नहीं; इसे 'कार बढ़ाता है '। – jonrsharpe
जो भी मेरे रूप में भ्रमित था, उसके लिए एमडीएन पर एक अच्छा पृष्ठ है जो क्लास-आधारित भाषाओं की तुलना में जेएस में ऑब्जेक्ट पदानुक्रम बनाने के तरीके के बारे में और बताता है: https://developer.mozilla.org/en/docs/ वेब/जावास्क्रिप्ट/गाइड/विवरण_of_the_Object_Model – jamcd