Also ich verstehe es so: Die Funktion erwartet alle Parameter einzeln und holt sie aus dem arguments-Array ab. Zitat:
Naja, ich verwende die Funktion setData an mehreren Stellen. Dort habe ich bereits die Prüfung mit arguments.length drin.
Da jetzt aber noch einige Werte aus einem Array mit variabler Länge dazukommen, sind auch diese als einzelne Parameter zu übergeben, damit die Funktion selber nicht verändert werden muss (zusätzliche typeof-Abfrage mit ggf. spezieller Array-Behandlung), sondern wie gehabt alles einzeln aus dem arguments-Array holen kann.
Vielleicht bin ich auch zu blöd, ich versteh immer noch nicht wo genau das Problem liegt. Es gibt ja z.b. auch die Möglichkeit einen Parameter zu überspringen oder eben zu mit typeof zu prüfen, was aber nicht geht, weil er die Funktion nicht ändern kann/will. Dann versteh ich aber nicht warum er ein Array als Parameter übergeben will, bzw. was die Funktion mit dem Parameter machen soll.
Das Konzept ist m.E. für den Müll. Bei mehr als zwei, drei Parametern verwendet man praktischerweise ein Array oder ein Objekt, um sie zu übergeben.
Das ist vermutlich richtig, wenn man aber wüßte was genau das Problem ist, gäbe es sicher auch andere Möglichkeiten.
Struppi.