Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Udfordring: Implementer Klassearv med Extends og Super() | Mestering af JavaScript-klasser og Arv
Avanceret JavaScript-Mestring

bookUdfordring: Implementer Klassearv med Extends og Super()

Opgave

Du arbejder på et transportstyringssystem, der sporer forskellige typer køretøjer. Hvert køretøj har en make, model og year. For elektriske køretøjer skal du også spore batteryCapacity. Du skal bruge arv til at udvide en generel Vehicle-klasse for specifikke elektriske køretøjer.

  1. Opret en ElectricVehicle-klasse, der udvider Vehicle;
  2. ElectricVehicle-konstruktøren skal acceptere make, model, year og batteryCapacity;
  3. Brug super() til at initialisere make, model og year i forældreklassen;
  4. Tilføj en getDetails-metode til ElectricVehicle, der overskriver Vehicle's getDetails-metode. Den skal kalde super.getDetails() og tilføje information om batteryCapacity. Formatet skal være: "{make} {model} ({year}) with a battery capacity of {batteryCapacity} kWh.".
12345678910111213141516171819202122232425262728293031
class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle _____ _____ { _____(make, model, year, _____) { _____(_____, _____, _____); this.batteryCapacity = batteryCapacity; } _____() { return `${super._____} with a battery capacity of ${ _____._____ } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Expected: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Expected: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
copy
  • Definer en klasse ElectricVehicle, der udvider Vehicle;
  • I ElectricVehicle-konstruktøren tilføjes en parameter batteryCapacity efter make, model og year;
  • Brug super(make, model, year) til at kalde forældreklassens konstruktør og initialisere make, model og year;
  • Tildel batteryCapacity til en egenskab i ElectricVehicle;
  • Definer en getDetails-metode i ElectricVehicle, der overskriver Vehicle's getDetails-metode;
  • Inden i getDetails bruges super.getDetails() til at hente forældreklassens detaljer, og derefter tilføjes information om batterikapacitet til returstrengen.
12345678910111213141516171819202122232425262728293031
class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle extends Vehicle { constructor(make, model, year, batteryCapacity) { super(make, model, year); this.batteryCapacity = batteryCapacity; } getDetails() { return `${super.getDetails()} with a battery capacity of ${ this.batteryCapacity } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Output: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Output: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
copy

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 15

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Awesome!

Completion rate improved to 2.22

bookUdfordring: Implementer Klassearv med Extends og Super()

Stryg for at vise menuen

Opgave

Du arbejder på et transportstyringssystem, der sporer forskellige typer køretøjer. Hvert køretøj har en make, model og year. For elektriske køretøjer skal du også spore batteryCapacity. Du skal bruge arv til at udvide en generel Vehicle-klasse for specifikke elektriske køretøjer.

  1. Opret en ElectricVehicle-klasse, der udvider Vehicle;
  2. ElectricVehicle-konstruktøren skal acceptere make, model, year og batteryCapacity;
  3. Brug super() til at initialisere make, model og year i forældreklassen;
  4. Tilføj en getDetails-metode til ElectricVehicle, der overskriver Vehicle's getDetails-metode. Den skal kalde super.getDetails() og tilføje information om batteryCapacity. Formatet skal være: "{make} {model} ({year}) with a battery capacity of {batteryCapacity} kWh.".
12345678910111213141516171819202122232425262728293031
class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle _____ _____ { _____(make, model, year, _____) { _____(_____, _____, _____); this.batteryCapacity = batteryCapacity; } _____() { return `${super._____} with a battery capacity of ${ _____._____ } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Expected: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Expected: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
copy
  • Definer en klasse ElectricVehicle, der udvider Vehicle;
  • I ElectricVehicle-konstruktøren tilføjes en parameter batteryCapacity efter make, model og year;
  • Brug super(make, model, year) til at kalde forældreklassens konstruktør og initialisere make, model og year;
  • Tildel batteryCapacity til en egenskab i ElectricVehicle;
  • Definer en getDetails-metode i ElectricVehicle, der overskriver Vehicle's getDetails-metode;
  • Inden i getDetails bruges super.getDetails() til at hente forældreklassens detaljer, og derefter tilføjes information om batterikapacitet til returstrengen.
12345678910111213141516171819202122232425262728293031
class Vehicle { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } getDetails() { return `${this.make} ${this.model} (${this.year})`; } } class ElectricVehicle extends Vehicle { constructor(make, model, year, batteryCapacity) { super(make, model, year); this.batteryCapacity = batteryCapacity; } getDetails() { return `${super.getDetails()} with a battery capacity of ${ this.batteryCapacity } kWh.`; } } // Testing const vehicle = new Vehicle('Toyota', 'Camry', 2020); console.log(vehicle.getDetails()); // Output: Toyota Camry (2020) const electricVehicle = new ElectricVehicle('Tesla', 'Model 3', 2021, 75); console.log(electricVehicle.getDetails()); // Output: Tesla Model 3 (2021) with a battery capacity of 75 kWh.
copy

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 15
some-alt