Updating property via getter in JS - I thought only setters could do this?

I’m wondering why we can set a property without a setter in the team stats project

In this example, the addPlayer() method uses this.players.push to add to the ._players array:

addPlayer(firstName,lastName,age){
   this.players.push( {
      firstName:firstName, 
      lastName:lastName,
      age:age});
  },

In the code above, the team._players array is successfully updated (note that underscore before players). If we remove the getter, then the function above stops working:

get players(){
    return this._players
},

There is no setter anywhere in the code, so why are we able to update ._players via the getter property of .players?