Как в javascript поделить число нацело? Есть ли какой-то оператор для деления нацело?
Ответ Поделить на число без остатка в JS можно несколькоми способами. Способ 1. Округление: var x = 10, y = 3.3333 alert(Math.floor(x/y)) Этот способ расчитан на результат вычисления больше нуля. Если результат будет отрицательный, то такая конструкция сработает не правильно. Например : Math.floor(-100/3) // Выдаст -34, хотя целая часть от -33,33333336 будет равна -33 Как вариант, для решения этой задачи округлением можно использовать опертор if: if(x/y>=0) alert(Math.floor(x/y)) else alert(Math.ceil(x/y)) Способ 2 : Вероятно не такой быстрый как предыдущий, но более универсальный. Приведение к int: var x = 10, y = 3.3333 alert(parseInt(x/y)) Способ 3. Производительный и универсальный: var x = 10, y = 3.3333 function div(val, by){ return (val - val % by) / by } alert(div(x, y)) Ну и немного хадкора: alert(~~(x/y)) // сокращенный Math.floor() результаты будут такие же alert(x/y>>0) alert(x/y|0) демо на jsfiddle