为什么我的代码会使结果成为负面结果

时间:2016-03-28 00:40:53

标签: javascript

所以我的代码是用于学校的书签代码(在chrome中使用),这就是它:

的javascript:

var org=prompt("What is the original?"); 
var norg=prompt("What is the new?"); 
var x = +norg - +org; 
var y =+x / +org; alert(+y * -100);
//                         ^^^^^^
if (+org < +norg) {alert("Increase");} else {alert("Decrease");}

我使用-100使结果等于正数百分比,但为什么需要-100才能获得正数?

此外,如果您想知道这是为了找到变化的百分比或尝试。

1 个答案:

答案 0 :(得分:0)

我会尝试尽力回答这个问题......

1)删除所有加号。重构代码,以便<resources> <!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style> </resources> 的返回值在分配给变量后立即生成。使代码更清晰,更少冗余,更不用说更高效了。

prompt

2)正如@adeneo所说,如果你正在寻找确保正值,请将值包裹在var org = +(prompt("What is the original?")); var norg = +(prompt("What is the new?")); 附近。

Math.abs

3)您还有一个包含无效javascript var y = Math.abs( x / org ); 的提醒,目前我会发表评论,因为您有点不清楚您要做什么。

最终代码:

alert(+y * **-100**);