如果在Javascript中不起作用

时间:2017-01-11 18:30:15

标签: javascript

If总是给我最后的结果

检查此代码段



function calc(on, ep, am, ek, b1, b2, b3, b4) {
  var sum, mo;
  b1 = parseInt(b1);
  b2 = parseInt(b2);
  b3 = parseInt(b3);
  b4 = parseInt(b4);
  sum = b1 + b2 + b3 + b4;
  mo = sum / 4;
  if (mo < 5) {
    x = "Not Good";
  }
  if (mo < 6, 5 && mo > 4, 99) {
    x = "Good";
  }
  if (mo < 8, 5 && mo > 6, 49) {
    x = "Really Good";
  }
  if (mo > 8, 49) {
    x = "Perfect";
  }
  alert("O " + on + " " + ep + " " + am + " who is in " + ek + "th semester had avereged " + mo + " " + x);
}
&#13;
&#13;
&#13; 我不能让它与其他类似的东西一起工作,但是我需要它才能工作但是

2 个答案:

答案 0 :(得分:5)

JavaScript floating point literals使用.字符(U + 002E:FULL STOP)作为小数点,而不是,字符(U + 002C:COMMA)(这是{ {3}})。

答案 1 :(得分:0)

如前所述,您必须使用.而不是,。您的mo < 6,5 && mo > 4,99将始终评估为99,这是真实的。因此mo具有什么价值并不重要。

&#13;
&#13;
var mo = 10;
console.log( (mo < 6,5 && mo > 4,99) );
&#13;
&#13;
&#13;

有关更多信息,请参阅MDN: Comma operator

  

逗号运算符计算每个操作数(从左到右)并返回最后一个操作数的值。