我正在努力实现以下目标,将任意数字舍入到最低35。
例如:
5 = 0
34 = 0
90 = 70
105 = 105
110 = 105
我现在正在使用以下代码,
$top = (event.pageY-50);
$top = Math.floor(($top/35))*35;
然而,当它是153时,它应该将它四舍五入到140,然而它将它舍入到105?
任何帮助都将不胜感激。
答案 0 :(得分:3)
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的正确结果。
答案 1 :(得分:0)
使用模数
$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()' />
&#13;
说明:
你有例如153,如果你拿这个模块35你得到13休息,只需从你的基数减去这个你得到你想要的东西:)
153 % 35 = 13
153 - 13 = 140
140/35 = 4
和最后的底部到153
答案 2 :(得分:0)
该算法相当于
var $top = (event.pageY-50);
$top -= $top%35;
当将153作为值
传递时,它将产生140