Challenge: Implement Getters and Setters in a Class
Task
You are working within a Car
class that has a private #mileage
property. Your task is to define getters and setters for this property to control how it’s accessed and modified.
- Define Getter for Mileage: Define a getter for the
mileage
property to retrieve the current mileage; - Define Setter for Mileage with Validation: Define a setter for the
mileage
property that accepts a new mileage value. This setter should:- Only allow updating if the new mileage is greater than the current mileage (mileage can only increase);
- If the new mileage is invalid, log
"Invalid mileage update"
and do not change the current mileage.
123456789101112131415161718192021222324252627class Car { #mileage = 1000; // Initial private mileage // Getter for mileage _____ mileage() { return this.#_____; } // Setter for mileage with validation _____ mileage(newMileage) { _____ (_____ > this.#_____) { this.#_____ = newMileage; } _____ { console.log(_____); } } } // Testing const car1 = new Car(); console.log(car1.mileage); // Expected: 1000 car1.mileage = 1500; // Update mileage to 1500 console.log(car1.mileage); // Expected: 1500 car1.mileage = 900; // Attempt invalid mileage update, expected: Invalid mileage update
- Define a
get
accessor formileage
to retrieve the current mileage; - Define a
set
accessor formileage
that takesnewMileage
as a parameter; - In the setter, check if
newMileage
is greater than the current mileage (this.#mileage
); - If
newMileage
is valid, update#mileage
tonewMileage
; - If
newMileage
is not greater than the current mileage, log"Invalid mileage update"
and do not change the mileage.
123456789101112131415161718192021222324252627class Car { #mileage = 1000; // Initial private mileage // Getter for mileage get mileage() { return this.#mileage; } // Setter for mileage with validation set mileage(newMileage) { if (newMileage > this.#mileage) { this.#mileage = newMileage; } else { console.log('Invalid mileage update'); } } } // Testing const car1 = new Car(); console.log(car1.mileage); // Output: 1000 car1.mileage = 1500; // Update mileage to 1500 console.log(car1.mileage); // Output: 1500 car1.mileage = 900; // Attempt invalid mileage update, expected: Invalid mileage update
Все було зрозуміло?
Дякуємо за ваш відгук!
Секція 1. Розділ 10
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 2.22
Challenge: Implement Getters and Setters in a Class
Свайпніть щоб показати меню
Task
You are working within a Car
class that has a private #mileage
property. Your task is to define getters and setters for this property to control how it’s accessed and modified.
- Define Getter for Mileage: Define a getter for the
mileage
property to retrieve the current mileage; - Define Setter for Mileage with Validation: Define a setter for the
mileage
property that accepts a new mileage value. This setter should:- Only allow updating if the new mileage is greater than the current mileage (mileage can only increase);
- If the new mileage is invalid, log
"Invalid mileage update"
and do not change the current mileage.
123456789101112131415161718192021222324252627class Car { #mileage = 1000; // Initial private mileage // Getter for mileage _____ mileage() { return this.#_____; } // Setter for mileage with validation _____ mileage(newMileage) { _____ (_____ > this.#_____) { this.#_____ = newMileage; } _____ { console.log(_____); } } } // Testing const car1 = new Car(); console.log(car1.mileage); // Expected: 1000 car1.mileage = 1500; // Update mileage to 1500 console.log(car1.mileage); // Expected: 1500 car1.mileage = 900; // Attempt invalid mileage update, expected: Invalid mileage update
- Define a
get
accessor formileage
to retrieve the current mileage; - Define a
set
accessor formileage
that takesnewMileage
as a parameter; - In the setter, check if
newMileage
is greater than the current mileage (this.#mileage
); - If
newMileage
is valid, update#mileage
tonewMileage
; - If
newMileage
is not greater than the current mileage, log"Invalid mileage update"
and do not change the mileage.
123456789101112131415161718192021222324252627class Car { #mileage = 1000; // Initial private mileage // Getter for mileage get mileage() { return this.#mileage; } // Setter for mileage with validation set mileage(newMileage) { if (newMileage > this.#mileage) { this.#mileage = newMileage; } else { console.log('Invalid mileage update'); } } } // Testing const car1 = new Car(); console.log(car1.mileage); // Output: 1000 car1.mileage = 1500; // Update mileage to 1500 console.log(car1.mileage); // Output: 1500 car1.mileage = 900; // Attempt invalid mileage update, expected: Invalid mileage update
Все було зрозуміло?
Дякуємо за ваш відгук!
Секція 1. Розділ 10