Używając JavaScript, chciałbym zaokrąglić liczbę przekazaną przez użytkownika do najbliższej dziesiątki. Na przykład, jeśli minie 7, powinienem zwrócić 10, a jeśli 33, powinienem zwrócić 30.
javascript
Abs
źródło
źródło
Math.floor
, jeśli chcesz zapobiec zaokrąglaniu w góręMath.round(x / 10) * 10
źródło
Gdzie
i
jest int.Zaokrąglić w dół do najbliższej wielokrotności 10, tj
parseInt(i / 10, 10) * 10;
Zaokrąglić w górę do najbliższej wielokrotności 10 tj
parseInt(i / 10, 10) + 1 * 10;
źródło
Potrzebowałem czegoś podobnego, więc napisałem funkcję. Użyłem funkcję przecinku zaokrąglenia tutaj , a ponieważ ja również użyć go do całkowitej zaokrąglenia, będę ustawić go jako odpowiedź tutaj też. W takim przypadku po prostu podaj liczbę, którą chcesz zaokrąglić, a następnie 10, liczbę, do której chcesz zaokrąglić.
function roundToNearest(numToRound, numToRoundTo) { return Math.round(numToRound / numToRoundTo) * numToRoundTo; }
źródło
.25
, możesz po prostu użyć.25
jako drugiego argumentu. Gdybyś miał użyć formuł w innych odpowiedziach, musiałbyś użyć4
jako drugiego argumentu, gdy chcesz zaokrąglić do.25
, co jest sprzeczne z intuicją..25
jako drugiego argumentu - zrobiłem to w funkcji jednego liniowcafunction roundTo(x,y){return Math.round(x / y) * y}