Ответ 1
var number = 123.123;
Math.max( Math.round(number * 10) / 10, 2.8 ).toFixed(2);
Мне нужно округлить до ближайшего 0.10 с минимумом 2.80
var panel;
if (routeNodes.length > 0 && (panel = document.getElementById('distance')))
{
panel.innerHTML = (dist/1609.344).toFixed(2) + " miles = £" + (((dist/1609.344 - 1) * 1.20) + 2.80).toFixed(2);
}
любая помощь будет оценена
var number = 123.123;
Math.max( Math.round(number * 10) / 10, 2.8 ).toFixed(2);
Если вам нужно округлить, используйте Math.ceil:
Math.max( Math.ceil(number2 * 10) / 10, 2.8 )
Умножьте на 10, затем выполните округление, затем снова разделите на 10
(Math.round(12.362 * 10) / 10).toFixed(2)
Другой вариант:
Number(12.362.toFixed(1)).toFixed(2)
В вашем коде:
var panel;
if (routeNodes.length > 0 && (panel = document.getElementById('distance')))
{
panel.innerHTML = Number((dist/1609.344).toFixed(1)).toFixed(2)
+ " miles = £"
+ Number((((dist/1609.344 - 1) * 1.20) + 2.80).toFixed(1)).toFixed(2);
}
Чтобы объявить минимум, используйте функцию Math.max
:
var a = 10.1, b = 2.2, c = 3.5;
alert(Math.max(a, 2.8)); // alerts 10.1 (a);
alert(Math.max(b, 2.8)); // alerts 2.8 because it is larger than b (2.2);
alert(Math.max(c, 2.8)); // alerts 3.5 (c);
var miles = dist/1609.344
miles = Math.round(miles*10)/10;
miles = miles < 2.80 ? 2.80 : miles;
округлить до ближайшего 0.10, вы можете умножить на 10, затем округлить (используя Math.round
), затем разделить на 10
Раунд до ближайшей десятой:
Math.max(x, 2.8).toFixed(1) + '0'
Раунд вверх:
Math.max(Math.ceil(x * 10) / 10, 2.8).toFixed(2)