mAciD: Array-Methoden in Funktionen

Beitrag lesen

Hallo Struppi,

beschränken wir uns doch auf das Problem.
(arrayToCopy[3] oder arrayToCopy[3].value ist mir jetzt erst mal egal, und mir ist auch egal ob es jetzt Objekt- oder Arraymethoden sind.
Dachte nur, das ein Array ein Objekt ist, weil ja mit new erzeugt, und ich dann von den Methoden des Objekts arrayToCopy (ist ja ein Array) eben von Objektmethoden spreche.
Wenn es nun Arraymethoden sind dann sage ich eben Arraymethoden dazu.

Mein Problem ist nun aber, daß folgendes funktioniert:

var einArray = new Array("A","B","C");   // ein neues Array erzeugt  
var kopiertesArray = einArray.slice(0);  // array kopiert by Value

Aber das hier funktioniert nicht:

var einArray = new Array("A","B","C");     // ein neues Array erzeugt  
var kopiertesArray = copyArray(einArray);  // Fehlermeldung.  
  
function copyArray(arrayToCopy) {  
  return einArray.slice(0);  
}  

Kann mir jemand beantworten, warum das nicht klappt. Ich weiß es nicht.

Und gleich vorab: Wahrscheinlich verwende ich nicht die richtigen Fachausdrücke. Sorry. Und vielleicht habe ich auch irgendwo ein Semikolon vergessen.
Mir geht es darum, warum ich auf die Arraymethoden bei als Parameter übergenes Array in funktionen nicht mehr zugreifen kann.

Michal