ES6 Classes & Constructors

What modern JavaScript feature is used in the StateManager class?
class TextInput {
  constructor() {
    this.value = '';
  }
  
  setValue(value) {
    this.value = value;
  }
}

class StateManager {
  #listeners = new Set();
  #state = {};
  
  setState(newState) {
    this.#state = {...this.#state, ...newState};
    this.#notify();
  }
  
  getState() {
    return {...this.#state};
  }
  
  subscribe(listener) {
    this.#listeners.add(listener);
    return () => this.#listeners.delete(listener);
  }
  
  #notify() {
    for (const listener of this.#listeners) {
      listener(this.#state);
    }
  }
}
Next Question (23/28)