Entschuldigung für die generische Frage. Ich habe überall gesucht und so viele ähnliche Themen gefunden, aber keine, die meine spezifische Frage beantworten - vielleicht, weil der gesuchte Begriff nicht einmal existiert.
Ein Freund von mir lernt gerade Programmieren, speziell JavaScript, und er hat mich gefragt, warum das nicht funktioniert hat:
var a = "Hello World";
a.replace("Hello", "Goodbye");
console.log(a) // Logs "Hello World"
Der Grund dafür ist, dass replace
keine Änderungen vorgenommen werden a
, da Zeichenfolgen in JavaSript unveränderlich sind. Da es eine Zeichenfolge zurückgibt , müssten Sie etwas tun wie ...
var a = "Hello World";
a = a.replace("Hello", "Goodbye");
console.log(a); // Logs "Goodbye World"
Die Alternative ist jedoch eine Funktion wie die von JavaScript reverse()
, da sie alle ihre Aufrufe ändert. Beispielsweise:
var fruits = ["Apples", "Oranges", "Bananas"];
fruits.reverse();
console.log(fruits) // ["Bananas", "Oranges", "Apples"]
Als mein Freund mich fragte, warum er replace
nicht funktioniere, bemerkte ich, dass ich nach einem Wort griff, das ich nicht kenne (soweit ich weiß) ...
„Sie müssen setzen die Zeichenfolge‚string Punkt ersetzen‘, weil die Ersetzen - Funktion ________ ist.“
Sie nicht brauchen , zu setzen eine Reihe gleich „Array dot - Reverse“, weil umgekehrt ________ ist.“
Ich kenne mich mit Prototypfunktionen aus, obwohl ich nicht glaube, dass das das gesuchte Wort ist. Kann mir jemand helfen, diese Lücken auszufüllen?
You don't need to set an array equal to "array dot reverse", because reverse is a mutator function
. Ich denke, ich habe diese Terminologie gehört, um auf Funktionen zu verweisen, die die Instanz "mutieren", die sie aufruft. Aber Sie sollten das wahrscheinlich woanders noch einmal überprüfen.