Setters run code when you assign to a property. Use them for validation or side effects.
class User {
#age = 0;
set age(value) {
if (value < 0) throw new Error("Invalid age");
this.#age = value;
}
get age() {
return this.#age;
}
}
Setters and getters often pair together.