Yeah, this https://developers.google.com/maps/documentation/javascript/markers#add gets very close to saying it must be in the constructor. I interpreted it as required in the constructor.