2016-04-02 17 views
0

なぜこれが動作していないのかわかりませんが、コンソールにはエラーはないとは言われませんが、2回目の "プロンプト"が表示されるはずです。作業。エラーが見つかりません

const Fanta = 250,Sprite = 250,Cola = 250,Dirol = 450,Snickers = 300,Lays = 800; 
var a = prompt("1:Fanta = 250, 2:Sprite = 250, 3:Coca Cola = 250, 4:Dirol = 450, 5:Snickers = 300, 6:Lays = 800"); 
function math() 
{ 
if(a == 1) 
{ 
alert("You chose Fanta"); 
var money = prompt("Put money in"); 
alert("You put in " + money) 
if(money >= 250) 
{ 
    alert("You just purchased Fanta! Take back" + money - Fanta); 
} 
} 
} 
+2

どのような2番目のプロンプト?あなたは決して数学関数を呼び出しません。 – dman2306

答えて

5

あなたが呼び出されていない機能math()に包まれたコードの一部を持っている: ここではコードです。一つの解決策は、(機能を削除します)それをアンラップすることです:あなたはaに割り当てた後、あなたはそれを呼び出す必要があり

var a = prompt(...); 
math(); 

const Fanta = 250, 
    Sprite = 250, 
    Cola = 250, 
    Dirol = 450, 
    Snickers = 300, 
    Lays = 800; 
var a = prompt("1:Fanta = 250, 2:Sprite = 250, 3:Coca Cola = 250, 4:Dirol = 450, 5:Snickers = 300, 6:Lays = 800"); 


    if (a == 1) { 
    alert("You chose Fanta"); 
    var money = prompt("Put money in"); 
    alert("You put in " + money) 
    if (money >= 250) { 
     alert("You just purchased Fanta! Take back" + money - Fanta); 
    } 
    } 

別の解決策は、関数math()を呼び出すことです。もちろん、あなたの関数はaを、本質的にグローバル変数として使用します。これは悪い習慣とみなされます。したがって、コードをリファクタリングして明示的にmath()に渡すことが必要な場合があります。

+0

ありがとう、今私はダム感じる –

+1

私たちすべてに起こる。 – kamituel

+0

それは働いた、ありがとう –

関連する問題