在 Javascript 中将钱四舍五入到最接近的 10 美元

发布于 2024-09-14 10:41:49 字数 285 浏览 7 评论 0 原文

如何将 JavaScript 中的小数四舍五入到最接近的 10?我今天的数学很垃圾,可能是睡了 2 小时:/

一些示例案例

$2823.66  = $2820
$142.11 = $140
$9.49 = $10

我知道我可能需要 Math.round/floor 的组合,但我似乎无法得到预期的结果。

任何帮助/指示表示赞赏!

M

How can I round a decimal number in Javascript to the nearest 10? My math is pretty rubbish today, it could be the 2 hour sleep :/

Some sample cases

$2823.66  = $2820
$142.11 = $140
$9.49 = $10

I understand I probably need a combination of Math.round/floor but I can't seem to get expected result.

Any help/pointers appreciated!

M

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

坦然微笑 2024-09-21 10:41:49

尝试

Math.round(val / 10) * 10;

Try

Math.round(val / 10) * 10;
苍暮颜 2024-09-21 10:41:49

使用这个函数:

function roundTen(number)
{
  return Math.round(number/10)*10;
}



alert(roundTen(2823.66));

Use this function:

function roundTen(number)
{
  return Math.round(number/10)*10;
}



alert(roundTen(2823.66));
月下凄凉 2024-09-21 10:41:49

要将数字四舍五入到最接近的 10,请先将其除以 10,然后将其四舍五入到最接近的 1,然后再次乘以 10:

val = Math.round(val/10)*10;

此页面有一些详细信息。它们采用另一种方式(例如,四舍五入到最接近的 0.01),但理论和实践是相同的 - 乘(或除)、四舍五入,然后除(或乘)。

To round a number to the nearest 10, first divide it by 10, then round it to the nearest 1, then multiply it by 10 again:

val = Math.round(val/10)*10;

This page has some details. They go the other way (e.g., rounding to the nearest 0.01) but the theory and practice are identical - multiply (or divide), round, then divide (or multiply).

早茶月光 2024-09-21 10:41:49

10 * 数学.round(val / 10)

10 * Math.round(val / 10)

毅然前行 2024-09-21 10:41:49
function round(number, multiplier) {
  multiplier = multiplier || 1;
  return Math.round(number / multiplier) * multiplier;
}

var num1 = 2823.66;
var num2 = 142.11;
var num3 = 9.49;

console.log(
  "%s\n%s\n%s", // just a formating thing
  round(num1, 10), // 2820
  round(num2, 10), // 140
  round(num3, 10)  // 10
);
function round(number, multiplier) {
  multiplier = multiplier || 1;
  return Math.round(number / multiplier) * multiplier;
}

var num1 = 2823.66;
var num2 = 142.11;
var num3 = 9.49;

console.log(
  "%s\n%s\n%s", // just a formating thing
  round(num1, 10), // 2820
  round(num2, 10), // 140
  round(num3, 10)  // 10
);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文