2016-11-03 18 views
-3

Ich brauche deine Hilfe: Ich habe eine variable anima, wenn also myFunction1() ausgeführt wird, wird es auf einen anderen Wert gesetzt. Wenn ich also myFunction2() ausfühle, funktioniert der Schalter case mit dem Wert, der für myFunction1() gesetzt wurde, und setzt anima wieder auf einen anderen Wert.Eine globale Variable ändern

var anima= 1; 

function myFunction1(){ 

switch(anima) { 
    case 1: 
     alert("initial value"); 
     break; 
    case 2: 
     alert(anima); 
     break; 
    case 3: 
     anime4r(); 
     break; 
    case 4: 
     anime5r(); 
} 
var anima= 2; 

} 

function myFunction2(){ 

switch(anima) { 
    case 1: 
     anime1(); 
     break; 
    case 2: 
     alert("it worked"); 
     break; 
    case 3: 
     anime4r(); 
     break; 
    case 4: 
     anime5r(); 
} 
var anima= 1; 

} 
+1

hör auf. Globale Variablen sind schlecht. – naomik

+1

Warum definieren Variablen immer wieder neu? – Li357

+0

Ein dummer Fehler von mir, um das zu behalten "var anima = 2;" in myFunction2() –

Antwort

2

Sie sich von der var in var anima= 2; und var anima= 1; (in function myFunction2()) befreien. Sie definieren die Variable in einem lokalen Bereich neu, sodass die Änderung nicht auf die globale Variable erfolgt.