За допомогою Javascript я хотів би округлити число, передане користувачем, з точністю до 10. Наприклад, якщо передано 7, я повинен повернути 10, якщо 33 передано, я повинен повернути 30.
Відповіді:
Поділіть число на 10, округніть результат і знову помножте його на 10:
var number = 33;
console.log(Math.round(number / 10) * 10);
Math.round(x / 10) * 10
Де iзнаходиться int.
Округлити до найближчого кратного 10, тобто
11 стає 10
19 стає 10
21 стає 20
parseInt(i / 10, 10) * 10;
Округлити до найближчого кратного 10, тобто
11 стає 20
19 стає 20
21 стає 30
parseInt(i / 10, 10) + 1 * 10;
Мені потрібно було щось подібне, тому я написав функцію. Я використовував функцію для десяткового округлення тут , і оскільки я також використовую її для цілочисельного округлення, я також встановлю її як відповідь тут. У цьому випадку просто введіть число, яке потрібно округлити, а потім 10 - число, яке потрібно округлити.
function roundToNearest(numToRound, numToRoundTo) {
return Math.round(numToRound / numToRoundTo) * numToRoundTo;
}
.25, ви можете просто використовувати .25як другий аргумент. Якби ви використовували формули в інших відповідях, вам довелося б використовувати їх 4як другий аргумент, коли ви хочете округлити до .25, що є протиінтуїтивним.
.25провів тестування в консолі, і прийнята відповідь повертає правильну відповідь, використовуючи як другий аргумент - я зробив це функцією з одним вкладишемfunction roundTo(x,y){return Math.round(x / y) * y}
Math.floor, якщо ви хочете запобігти округленню вгору