得到余数函数不起作用

时间:2013-07-01 16:35:22

标签: javascript jquery

我正在尝试以更短的方式编写脚本,但它不起作用..

我看到的并不是很清楚..所以:这里所有的代码......

 $(document).ready(function(){

$('button').click(function(){
 var benen = $('[name=benen]').val();


 var zadelmaat = benen * 1.89;
var kadermaat = benen * 0.69; 

var remainder = zadelmaat % 2;
if(remainder % 2 == 0)
{
return zadelmaat;
}else
{
zadelmaat = zadelmaat - remainder;
}

var remainder = kadermaat % 2;
if(remainder % 2 == 0)
{
return kadermaat;
}else
{
kadermaat = kadermaat - remainder;
} 

$('.zadelmaat').append(zadelmaat);
$('.kadermaat').append(kadermaat);
return false;

});
});

这对我有用!但我想改变的是写一个简单的函数来摆脱余数(以防万一)!

我希望现在更清楚......

日Thnx!

4 个答案:

答案 0 :(得分:1)

您将值传递给函数,而不是指针。要使其工作,您必须将return x;添加到else子句。

答案 1 :(得分:1)

将您的功能更改为: 如果不是== 0

,则只返回不同的值
function getRemainder(x) { 
    var remainder = x % 2;
    if(x % 2 != 0) {
        x = x - remainder;
    }
    return x
 }

答案 2 :(得分:1)

有人编辑了您的代码,这似乎是无效的编辑,因为它确实改变了问题/问题。

简化的功能代码:

function getRemainder (x) {
   return x % 2 === 0 ? x : x = x - x % 2;
};

我在样本小提琴的原始代码中做了一些假设:http://jsfiddle.net/eqQzM/

警告“28:6”

答案 3 :(得分:1)

这样做:

function getRemainder(x) { 
    var remainder = x % 2;
    return x - remainder;
}

如果余数不是0,您忘记了return结果。而且您不需要像x - 0 == x那样明确地测试结果。