Hi!
Ich wusste nicht, wie ich den Titel wählen sollte... Ich bin kurzlich in einem Script auf einen JavaScript-Teil gestossen, der mir vorher nicht bekannt war, die Arbeit mit JavaScript erheblich erleichtert...
Undzwar handelt es sich dabei um (ich nenns einfach mal so) direkte Objektinitialisierung. Leider habe ich auf die Schnelle keine Weiteren Infos dazu gefunden, aber eingie können die Technik bestimmt gebrauchen. (Vor allem ich

)
Mal folgendes Scenario: Ihr müsst ein assoziatives Array (Hashtable) mit 2 Ebenen aufbauen. Wie würde man da vor gehen? Also ich hätts so gemacht:
Code:
var meinarr = new Array();
meinarr['jan'] = new Array();
meinarr['jan']['age'] = 23;
meinarr['jan']['sex'] = 'm';
meinarr['blub'] = new Array();
meinarr['blub']['age'] = 32;
meinarr['blub']['sex'] = 'mf';
..
...
....
also... sauviel Schreibarbeit. Mit der Technik, die ich entdeckt habe ists viel einfacher - ich sag mal, wie man es aus z.B. PHP gewohnt ist.
Das gleiche Hashtable in der "neuen" Schreibweise:
Code:
var meinarr = {
'jan' : {'age':23, 'sex':'m'},
'blub': {'age':32, 'sex':'mf'}
}
Abgefahren, oder?! Kannte das wer? Wenn ja, dann möcht ich da mal etwas mehr Infos zu haben. Wie heisst der Kram z.B.?!
Ich bin begeistert!!
Gruss
Jan
Code:
function ehh() {
bla = { 'author' : "Jan",
'email' : "jan@traum-projekt.com",
'message': "bla bla bla",
'yeah': function() {
window.status = 'sogar das klappt...';
},
'adresse': {'strasse':'Juliusstrasse 12',
'ort':'...',
'plz':'38350'
}
}
parseObj(bla)
bla.yeah();
}
function parseObj(obj) {
for(i in obj) {
if (typeof(obj[i]) == "object")
parseObj(obj[i]);
else
alert(obj[i]);
}
}