function erzeuge(i1,i2,i3,i4,i5){
var a=new Array(i1,i2,i3,i4,i5)
for(var i=0;i<a.length;i++){
if(!a[i]){a[i]=" "}x.writleln('<p>'+a[i]+'</p>')
}}function inhalt(){
erzeuge('inhalt1','inhalt2','inhalt3','inhalt4','inhalt5')
Man könnte der Funktion "erzeuge" natürlich gleich ein Array übergeben,
Ja.
aber in diesem Fall müsste ich a=new Array in jeder Zeile ergänzen.
Nein, wieso?
1. Anscheinend kennst du die arguments-Liste nicht, mit der du auf die Parameter einer Funktion zugreifen kannst.
function funktionMitBeliebigerParameterzahl () {
for (var i = 0, length = arguments.lenth; i < length; i++) {
alert(arguments[i]);
}
}
funktionMitBeliebigerParameterzahl("eins", "zwei");
funktionMitBeliebigerParameterzahl("eins", "zwei", "drei", "vier");
2. Anscheinend kennst du den Array-Literal nicht.
['inhalt1', 'inhalt2', 'inhalt3', 'inhalt4', 'inhalt5']
ist ein Ausdruck, der einen Array mit eben jenen Elementen erzeugt.
erzeuge(['inhalt1', 'inhalt2', 'inhalt3', 'inhalt4', 'inhalt5']);
übergibt den so erzeugten Array dann an eine Funktion.
Wieder mal der alte Spagat zwischen Dateigröße und Geschwindigkeit.
Dateigröße ist vernachlässigbar. JavaScript-Code lässt sich wunderbar in der Größe optimieren (z.B. durch die genannten Array-Literal) und schließlich komprimieren.
Mathias