Привет. Как округлить, например, число 2,35 до 2,5 и число 3,76 до 4 при помощи JS? Нужна динамическая система, которая могла бы округлять число до ближайшей половины, либо до целого числа.
Исходя из того как я понял поставленную задачу (только для положительных чисел больше либо равных 1):
function numRound(num) {
let d = Math.floor(num),
i = num%d;
return i < .25 ? d : (i < .75 ? d + .5 : d + 1);
}
console.log(numRound(2)); // 2
console.log(numRound(2.01)); // 2
console.log(numRound(2.24)); // 2
console.log(numRound(2.25)); // 2.5
console.log(numRound(2.5)); // 2.5
console.log(numRound(2.74)); // 2.5
console.log(numRound(2.75)); // 3
console.log(numRound(2.99)); // 3
console.log(numRound(3)); // 3
1) Умножить на 2.
2) Округлить до ближайшего целого.
3) Разделить на 2.
function numRound(num) {
return Math.round(num * 2) / 2;
}
console.log(numRound(2)); // 2
console.log(numRound(2.01)); // 2
console.log(numRound(2.24)); // 2
console.log(numRound(2.25)); // 2.5
console.log(numRound(2.5)); // 2.5
console.log(numRound(2.74)); // 2.5
console.log(numRound(2.75)); // 3
console.log(numRound(2.99)); // 3
console.log(numRound(-1.01));// -1
console.log(numRound(-1.26));// -1.5
console.log(numRound(-1.74));// -1.5
console.log(numRound(-1.76));// -2
console.log(numRound(-0.26));// -0.5
Можно сделать универсальную функцию, в которую передавать точность:
function numRound(num, precision) {
return Math.round(num / precision) * precision;
}
console.log(numRound(2, 0.5)); // 2
console.log(numRound(2.31, 0.5)); // 2.5
console.log(numRound(2.24, 0.2)); // 2.2
console.log(numRound(2.51, 0.2)); // 2.6
console.log(numRound(153, 2)); // 154
console.log(numRound(170, 50)); // 150
console.log(numRound(206, 10)); // 210
Используй Math.round
. Если после применения оного результат меньше исходного, то значит к результату надо прибавить 0.5. Для чисел от N.5 Math.round
выдаст целое число
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Привет друзя нужно парсить осюда https://blockchaininfo/ru/ticker на свой сайт
Есть корзина в интернет-магазинеТовар в нее добавляется либо с помощью сессий, либо через куки
Нужен максимально простой чарт, но что бы при клике на какой либо из его элементов, я смог повесить обработчик клика, и по нужным данным, например...
Есть приложение, написанное на React Native, в манифесте которого прописаны следующие разрешения: