2016-11-03 19 views
-3

私はあなたの助けが必要です:私は可変アニマを持っているので、myFunction1()がexecultedされると、別の値に設定されます。だからmyFunction2()を実行すると、switch caseはmyFunction1()で設定された値に忠実に動作し、animaを別の値に設定し直します。グローバル変数を変更する

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

それを停止します。グローバル変数が悪い – naomik

+1

変数を再定義するのはなぜですか? – Li357

+0

"var anima = 2;"を維持するための私の愚かな間違い。 myFunction2()内で –

答えて

2

は(function myFunction2()中)var anima= 2;varvar anima= 1;を取り除きます。変数がローカルスコープで再定義されているため、変更はグローバル変数には適用されません。

関連する問題