Also ist date() nun ein Konstruktor, ein Objekt oder ist es sogar beides(ist dies denn überhaupt möglich)?
Also meines Wissens ist der Konstruktur eine Funktion innerhalb einer Klasse die beim Instanzieren der Klasse aufgerufen wird. (In C++, PHP und Perl ist es so, ich gehe davon aus, in JS ist es genauso)
Ich würde sagen, date() ist der Name der Klasse. Ob diese einen Konstruktor hat, kann ich nicht sagen, vermute ich aber, da einige Werte bereits nach der Instanzierung zur Verfügung stehen.