Как округлить число к числу шага на PHP и на JS?
Пример на PHP
$price = 242.54522003 // цена
$step = 1.00000000 // шаг цены
Должен быть результат: 242
Еще примеры:
$price = 242.54522003 // цена
$step = 0.00100000 // шаг цены
// 242.545
$price = 112.59920000 // цена
$step = 0.01000000 // шаг цены
// 112.59
$price = 112.59920000 // цена
$step = 10.00000000 // шаг цены
// 110
Округлять в меньшую сторону.
Ответы (1 шт):
Автор решения: Алекс Данилин
→ Ссылка
console.log(valStep(242.54522003,0.00100000))
console.log(valStep(112.59920000,10.00000000))
console.log(valStep(112.59920000,0.01000000))
function valStep(num, step) {
let stepFloat
if (step.toString().match('.') && step.toString().split('.')[1]) {
stepFloat = step.toString().split('.')[1].length
}
if(stepFloat) {
return parseFloat(num - (num % step)).toFixed(stepFloat)
} else {
return parseInt(num - (num % step))
}
}