Eine Methode ist eine Funktion, die zu einem Objekt gehört und auf dessen eigenen Daten arbeitet.
- Methode
Eine Funktion, die zu einem Objekt oder einer Klasse gehört und Zugriff auf deren eigene Daten hat.
Beispiel: „Die Methode am Produkt weiß selbst, ob noch Bestand da ist.“Abgrenzung zur Funktion: Technisch dasselbe. Der Name sagt, wo sie steht, nämlich bei einem Objekt statt für sich allein.
Abgrenzung zur Property: Die Property hält einen Wert, die Methode tut etwas. Umgangssprachlich: Properties sind, was ein Objekt weiß, Methoden, was es kann.
Der Zugriff auf die eigenen Daten
Eine Methode kommt über ein Schlüsselwort an das Objekt heran, zu dem sie gehört; in den meisten Sprachen heißt es this oder self. Damit braucht sie die Werte nicht übergeben zu bekommen, mit denen sie rechnet.
Genau das ist der Gewinn der objektorientierten Programmierung. Die Regel steht dort, wo die Daten liegen, und wer sie aufruft, muss sie nicht kennen.
class Produkt {
constructor(preis, bestand) {
this.preis = preis; // Property
this.bestand = bestand; // Property
}
istVerfuegbar() { // Methode
return this.bestand > 0;
}
}Die Methodenkette
Gibt eine Methode das Objekt selbst zurück, lässt sich die nächste direkt anhängen. Daraus entstehen die Ketten, die aus Abfragen bekannt sind, etwa in Statamic oder in Laravel.
Für das Lesen heißt das: Die Kette wird von links nach rechts abgearbeitet, und jedes Glied schränkt weiter ein. Wer eine lange Kette versteht, versteht meist auch, was die Abfrage am Ende liefert.
Eingebaute Methoden
Die Werte, mit denen du ohnehin arbeitest, bringen welche mit. Ein String kann seine Länge nennen und Teile herausschneiden, ein Array kann filtern und umformen. Das sind Methoden, auch wenn man beim Benutzen selten daran denkt.