Ich habe, was eine dumme Frage sein kann. Im folgenden Code scheint die Funktion doStuff myArray einem leeren Array zuzuweisen, aber wenn es in der Konsole versucht wird, ist myArray immer noch [2,3,4,5].Referencing Arrays in Javascript
var myArray = [2, 3, 4, 5];
function doStuff(arr) {
arr = [];
};
doStuff(myArray);
console.log(myArray)// => [2,3,4,5]
Ferner ist eine Funktion, dass das Array modifiziert scheint gut zu funktionieren. Zum Beispiel:
function changeSecondIndex(arr){
arr[2] = 25;
}
changeSecondIndex(myArray)
console.log(myArray) // => [2,3,25,5]
Könnte mir bitte jemand helfen, zu verstehen, was hier vor sich geht? Vielen Dank.
Mögliches Duplikat [Javascript-Arrays Funktionen von Wert, so dass ursprünglichen Array unverändert vorbei] (http://stackoverflow.com/questions/14491405/javascript-passing-arrays-to- functions-by-value-verlassen-original-array-unaltere – ManoDestra
@ManoDestra Die Frage ist hier, warum es passiert und die Frage in diesem Beitrag ist, wie man es beheben kann. Zwei verschiedene Fragen aus meiner Sicht. –
Diese Frage wird vom anderen beantwortet, wenn es verstanden wird. – ManoDestra