Namesräume bei Klassennamen verwenden.
Scar
- javascript
0 Thomas J.S.0 molily0 Scar
Hallo,
wenn ich eine klasse mit namensraum nach schema 'Domain.Klassenname' erstellen will muss ich doch Domain.Klassenname = function() { ... } schreiben oder?
wenn ich nun aber new Domain.Klassenname(); aufrufe meckert er, dass Domain nicht existiert. wie müsste ich es denn richtig machen? :-/
grüße Chris
Hallo,
wenn ich eine klasse mit namensraum nach schema 'Domain.Klassenname' erstellen will muss ich doch Domain.Klassenname = function() { ... } schreiben oder?
"Domain" wäre in diesem Fall ein Objekt und "Klassenname" eine Methodes dieses Objekts.
wenn ich nun aber new Domain.Klassenname(); aufrufe meckert er, dass Domain nicht existiert. wie müsste ich es denn richtig machen? :-/
vielleicht hilft die dieser Artikel weiter:
[http://aktuell.de.selfhtml.org/artikel/javascript/oomodell/]
Grüße
Thomas
Hallo,
wenn ich eine klasse mit namensraum nach schema 'Domain.Klassenname' erstellen will muss ich doch Domain.Klassenname = function() { ... } schreiben oder?
Domain muss natürlich ein existierendes Object sein. (So etwas wie Namensräume gibt es nicht direkt in ECMAScript. Man kann Konstruktorfunktionen allerdings an Objekte pappen.)
var Domain = {};
Domain.Konstruktor = function () {};
var instanz = new Domain.Konstruktor();
alert(instanz);
wenn ich nun aber new Domain.Klassenname(); aufrufe meckert er, dass Domain nicht existiert.
Da hast du doch schon den Fehler.
wie müsste ich es denn richtig machen? :-/
Dafür sorgen, dass Domain existiert. ;)
Mathias
danke an euch beide,
wenn ich das Objekt vorher erstelle klappts dann auch. ist zwar eigentlich nicht so ganz.. das was ich wollte, macht abe nix, klappt und passt :)
grüße Chris