javascript - 如果一个数字有 .00 你怎么能删除它?

标签 javascript numbers decimal

我一直在四处寻找这个答案,并且有一些替代方案。不幸的是,它们对我来说都没有意义。

我在一个电子商务网站上工作,如果产品价格是整数,他们会自动上传 '.00'。我们有一些产品会在使用的地方显示小数点(即 £13.50),但我们只想从定价中删除所有 .00 的实例。

如果有人需要这方面的更多信息,请告诉我。我知道定价来自网站的许多部分,而不仅仅是一个特定的类别。

最佳答案

如果您想要删除字符串末尾的.00,那么您可以这样做

str = str.replace(/\.00$/,'');

如果您的 .00 可能不在字符串的末尾,例如 "10.00 $ and 24.00€",则执行

str = str.replace(/\.00([^\d])/g,'$1');

下面是更多评论:

大多数情况下,数字格式化涉及许多其他要求,我们无法猜测您的要求。

例如,这是我的数字格式化函数之一的测试集:

//   formatFloat(100.0)     => "100"
//   formatFloat(100.0, 12) => "100"
//   formatFloat(100.1)    => "100.1"
//   formatFloat(100.1, 0) => "100"
//   formatFloat(100.7, 0) => "101"
//   formatFloat(.0434) => "0.043"
//   formatFloat(1.999999) => "2"
//   formatFloat(.0000047)     => "0"
//   formatFloat(.0000047, 6)  => "0.000005"
//   formatFloat(.0000047, 12) => "0.0000047"
//   formatFloat(undefined) => ""
//   formatFloat(NaN) => ""

因此,如果您对我提供的解决方案不满意,请花时间定义您的完整需求。

关于javascript - 如果一个数字有 .00 你怎么能删除它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17169404/

相关文章:

javascript - 正则表达式不匹配 6 个重复的数字

c# - 如何将小数的最小小数部分加一?

php - 定点类型 - "exact value or not"?

javascript - 淡入淡出的背景横幅图像,自动调整为当前窗口宽度

javascript - Node.js - HTTPS PFX 错误 : Unable to load BIO

python - 在 Python 中绘制随机数

java - 如何将十进制转换为十六进制?

Javascript:无法在所有 HTML 页面中读取 Cookie

javascript - 取决于列表项文本长度的 CSS 类

excel - 如果包含文本和数字