Setters Προσβατών στην ΑΟΠ στο JavaScript

Ας κάνουμε τώρα εκτός από το getter να φτιάξουμε και ένα setter προσβάτη:

javascriptclass User {
  #name;
  
  get name() {
    return this.#name;
  }
  
  set name(name) {
    this.#name = name;
  }
}

Ας προσθέσουμε τώρα έλεγχο στο setter:

javascriptclass User {
  #name;
  
  set name(name) {
    if (name.length > 0) {
      this.#name = name;
    } else {
      throw new Error('name is incorrect');
    }
  }
  get name() {
    return this.#name;
  }
}

Ας δημιουργήσουμε ένα αντικείμενο της κλάσης:

javascriptlet user = new User;

Ας γράψουμε δεδομένα στην ιδιότητά μας:

javascriptuser.name = 'john';

Ας προσπαθήσουμε να γράψουμε μια μη έγκυρη συμβολοσειρά και θα πάρουμε σφάλμα:

javascriptuser.name = '';
Задание 1

Υλοποιήστε τους setters για τις ιδιότητες της κλάσης Employee.

Задание 2

Προσθέστε ελέγχους στους setters των προσβατών της κλάσης Employee.