Wpis z mikrobloga

#javascript #js
Mam przykładową klasę

class Player {
constructor(id) {
this.id = id;
}

Potem tworze obiekt tej klasy gdzieśtam
const player = new Player(1);
I teraz pytanie, czy chcąc uzyskać id obiektu player powinienem udawać że nie mam dostępu do wewnętrzej zmiennej i zrobić w klasie metodę

getId() { return this.id }
czy po prostu pisać

const playerId = player.id;
  • 13
@Name_in_progress: Jeżeli chcesz to robić w ES5 to zainteresuj się wzorcem projektowym o nazwie "Revealing Module".
Wtedy będziesz miał enkapsulację i nic nie musisz udawać bo nie masz dostępu do pól obiektu. Musisz wtedy utworzyć metody (getery setery) ale uwaga na przekazywanie zmiennych z modułu bo w JS nie ma referencji do prymitywów (Number, String, boolean itd.)