Hallo Peter,
verwende ein Objekt zur Ablage der Ergebnisse. Das ist auf jeden Fall besser, als das window-Objekt mit Variablen zuzumüllen. Wenn die Rechnungen von außen angestoßen werden, ist es auch sinnvoll, das Speichern der Ergebnisse von außerhalb zu steuern. Im einfachsten Fall speicherst Du die Ergebnisse als Properties des Objekts.
var ergebnisse = { };
var objX = /* irgendwas */, objY = /* nochwas */, objZ = /* dingsbums */;
ergebnisse["dies_X"] = rechneDies(objX);
ergebnisse["X_mit_Y"] = rechneDas(objX, objY);
Die Frage ist natürlich: Was machst Du mit deinen gespeicherten Ergebnissen? Da steckt ja ein Sinn dahinter, und es ist dann natürlich die Frage, was Du mit den Berechnungen vorhast. Ist es sinnvoll, einen String als Schlüssel zu verwenden? Musst Du auch wieder rückwärts von den Ergebnissen auf die beteiligten Objekte schließen können? Musst Du die Ergebnisse in einer bestimmten Ordnung auflisten können?
Davon hängt ab, welche Datenstruktur sinnvoll ist, um die Ergebnisse zu speichern. Ein flaches Dictionary, wie gerade gezeigt, ist eine sehr primitive Lösung und - je nach beabsichtigtem Nutzen - deutlich verbesserbar.
Im Sinne von "Separation of Concerns" ist es auch nicht sinnvoll, dass die Berechnungsmethoden ihre Ergebnisse selbst speichern. Ein externes Management der Ergebnisse dürfte die Handhabung deutlich vereinfachen. Was man genau tun kann, das lässt sich ohne Kenntnis der Aufgabenstellung schlecht sagen.
Rolf
sumpsi - posui - clusi