我试图实现以下,轮任何数量到最低35.舍入数到最低35
例如:
5 = 0
34 = 0
90 = 70
105 = 105
110 = 105
我用下面的代码现在,
$top = (event.pageY-50);
$top = Math.floor(($top/35))*35;
然而,当它是153,应该是四舍五入为140,但它是四舍五入到105?
任何帮助,将不胜感激。
我试图实现以下,轮任何数量到最低35.舍入数到最低35
例如:
5 = 0
34 = 0
90 = 70
105 = 105
110 = 105
我用下面的代码现在,
$top = (event.pageY-50);
$top = Math.floor(($top/35))*35;
然而,当它是153,应该是四舍五入为140,但它是四舍五入到105?
任何帮助,将不胜感激。
function to35(x){return Math.floor(x/35)*35;};
[5,34,35,36,90,100,105,110,153,160].map(to35);
/*
0,0,35,35,70,70,105,105,140,140
*/
我错过了什么吗? 153的输入产生的140正确结果
是的,你是,我的错误,当扣除50,我的原始代码以及你的是正确的。谢谢。 – 2014-10-29 22:24:26
使用模
$top = (event.pageY-50);
alert($top - ($top % 35));
检查这个片段
window.calculate = function(){
$top = document.getElementById('num').value;
alert($top - ($top % 35));
}
<input type="number" id='num' value="153" />
<input type="button" id='sub' value="calc" onClick='calculate()' />
说明:
您已经例如153,如果你把这个模块35你13休息,只是从你的基数此。减去你得到了你想要的东西:)
153 % 35 = 13
153 - 13 = 140
140/35 = 4
和clostest底部153
算法相当于
var $top = (event.pageY-50);
$top -= $top%35;
并通过153作为值时,它会产生140
'变量$顶部= 153; $ top = Math.floor(($ top/35))* 35;'为我产生'140'。 – 2014-10-29 22:06:34
'Math.floor(153/35)* 35 == 140'在我的浏览器中。 – Dave 2014-10-29 22:06:55
Math.floor(153/35)* 35在我的控制台中等于140。 – 2014-10-29 22:06:57