Werde ich Probleme haben wenn ich erkläre die gleiche variable mehrmals verwenden?

So können sagen, ich habe einige code:

//Javascript
var elements = [];
function addNumbah1(){
    var i = 1;
    elements.push(i);
}
function addNumbah2(){
    var i = 2;
    elements.push(i);
}

... Und das geht weiter bis zu addNumbah999(), ist es schlechte form zu erklären, die i variable, jedes mal? Wird, dass etwas zu brechen? Soll ich tun:

//Javascript
var elements = [];
var i
function addNumbah1(){
    i = 1;
    elements.push(i);
}
function addNumbah2(){
    i = 2;
    elements.push(i);
}
  • Ihre beiden Syntaxen sind nicht gleichwertig. Brauchen Sie eine oder drei Variablen?
  • das deklarieren von Variablen in einer Funktion macht Sie lokal auf diese Funktion - in deinem zweiten Beispiel, Sie deklarieren die variable im globalen scope
  • Ihre erste deklariert eine lokale i in jeder Funktion. Jedes mal, wenn Sie rufen addNumbah1(), i wird 1. Die zweite erklärt i weltweit und verwendet die global in jeder Funktion, obwohl Sie auf einen neuen Wert zurückgesetzt bei jedem Aufruf.
  • Könnte Sie klären, was Sie bedeuten?
  • ist es schlechte form zu ändern, den Wert einer globalen, immer und immer wieder so ist? Oder ist es ok?
  • Eher letzteres Beispiel etwas kaputt macht. Und Sie müssen nicht zu erklären, 999 sehr ähnliche Funktionen, es ist etwas falsch mit Ihrem code-Struktur.
  • Es hängt immer von deinem Anwendungsfall. Eine Zeit, die Sie eine variable ändern möchten in einem höheren Bereich, so werden es andere bemerken, zu anderen Zeiten darfst du nicht ohne etwas zu beschädigen. Sagen Sie uns, was dein code tun soll (welches problem es Ziele), und wir können Ihnen sagen, ob die var sollte eine Globale oder lokale.
  • Im Allgemeinen ist es besser, zu vermeiden, deklarieren von Variablen in den globalen Gültigkeitsbereich. Erstens, es ist leicht zu erstellen Kollisionen, vor allem, wenn Sie mit 3rd-party-Skripte. Zweiten, Variablen im globalen Geltungsbereich nicht erhalten, Müll gesammelt, solange die Seite nicht aktualisiert. Sie wollen nicht zu halten, die Variablen im Speicher länger, als Sie müssen. Ändern Sie den Wert einer Variablen nicht etwas falsch mit ihm, es ist wirklich die beiden oben genannten Dinge, die Sie brauchen, um mehr sorgen machen.

Schreibe einen Kommentar