Я новичок в JavaScript Я пытаюсь выполнить упражнение, в котором у меня есть объект, вложенный внутри какого-либо объекта, и я использую наследование, чтобы объединить их все вместе. Проще говоря, основная цель состоит в том, чтобы быть в состоянии выполнить эту строку кода:Dynamicish Inheritance
Vehicle1 = new Vehicle("Car");
Print(Vehicle.Car("Toyota").Toyota("Red").printEverythingInherited()); //should print Car, Toyota, Red
Vehicle2 = new Vehicle("Car");
Print(Vehicle.Car("Honda").Toyota("Blue").printEverythingInherited()); //should print Car, Honda, Blue
Я уверен, если этот тип кода можно выполнить, я faily новичок в JavaScript. Ниже приводится моя реализация, и мне хотелось бы получить некоторые отзывы о том, как двигаться вперед.
Кроме того, я хотел бы отметить, что я хочу, чтобы избежать создания
Car = new Toyota("Blue")
Мне нужно создать его как:
Car = Vehicle("Car").Car("Toyota").Toyota("Blue")
function Vehicle(type) {
this.Vehicle = type
}
Vehicle.prototype.Car = Car
function Car(brand) {
//Vehicle.call(this, "g")
this.brand = brand
}
Car.prototype.Toyota = Toyota
Car.prototype.Honda = Honda
function Honda(color) {
this.color = color
function printEverythingInherited() {
print(this.Vehicle + this.brand + this.color) should print Car, Honda, Red
}
}
function Toyota(color) {
this.color = color
this.getPriviledgedFunctionColor = function() {
Log.Message("Toyota() " + this.color)
}
}
Vehicle = new Vehicle("Car");
Print(Vehicle.Car("Toyota").Toyota("Red").printEverythingInherited());
Почему у вашей Honda есть метод «.Toyota»? – Bergi