2016-05-05 13 views
-1

私はリサイクルの成功を測定するプログラムを作成しています。それは答えを見つけるために平均します。これは、23.456323が結果ボックスにあまりうまく収まらないという事実のために、これを困難にしています。私はそれを丸めるためにmath.round()を入れました。私がこれをすると、それは平均化を止める。ここに私のコードは次のとおりです。丸めプログラムが機能しない

$('.num').text(prompt('How is recycling? 1-100!')); 

function colors() { 
    numb = Number($('.num').text()); 
    if (numb < 30) { 
     $('.num').css('color', '#ff0000'); 
    } else if (numb > 29 && numb < 79) { 
     $('.num').css('color', '#ffff00'); 
    } else if (numb > 78) { 
     $('.num').css('color', '#00ff00'); 
    } else { 
     $('.num').css('color', '#000000'); 
    } 
} 
colors(); 
$('button').click(function() { 
    var how = Number(prompt('How is recycle? Rate it 0-100!')); 
    var calc = (Number($('.num').text()) + how)/2; 
    $('.num').text(calc); 
    colors(); 
}); 

はここで丸めとない私が丸め置くライン、次のとおりです。

$('.num').text(calc);:丸めなしで。

$('.num').text(math.round(calc));:丸め付き。

+7

'math!== Math'、JSは大文字と小文字を区別します。 – Teemu

+2

失敗したコードを投稿してください。まれな例外を除いて、動作するコードは、[MCVE](http://stackoverflow.com/help/mcve)を生成することを除いて、問題の解決には役立ちません。 – phihag

+0

コンソールに出力することはできますか?ちょうどすべての操作の後に値を印刷し、それが間違っている場所を確認して、それをあなたの質問に追加するのはなぜですか? – ViperLordX

答えて

0

JavaScriptは大文字と小文字を区別します。コメントに@Teemuが記載されているため、mathMathと同じものを参照していません。

コードには、コードに定義されていないmathが参照されています。 mathundefinedなので、browser consoleReferenceError: math is not defined行に沿ってエラーメッセージが表示されるはずです。

mathMathにはMathオブジェクトを参照するように変更します。これは暗黙的に言語の一部として定義されています。

関連する問題