Javascript - 用小数替换整数[重复]

Posted

技术标签:

【中文标题】Javascript - 用小数替换整数[重复]【英文标题】:Javascript - replace whole numbers by decimals [duplicate] 【发布时间】:2013-10-30 04:41:29 【问题描述】:

我有 html 表格,单元格中有数字(“数字”类)。有些数字是整数,有些是一个小数或两个小数。

我想做一个脚本,将所有数字转换为两位十进制格式,然后放入代码中。

e.g.
1 = 1.00
1.0 = 1.00
1.00 = 1.00

这是我的第一次尝试,将一个十进制数转换为两个十进制数:

var elements = document.getElementsByClassName("numbers");
for (var i = 0, l = elements.length; i < l; i++) 
elements[i].innerHTML = elements[i].innerHTML.replace(/\d1,2(\.\d1)/g, "$&0");

【问题讨论】:

使用现有代码得到什么结果? 使用现有代码我得到这个结果:6.3 = 6.30 OK 1.55 = 1.505 WRONG 【参考方案1】:

你为什么不直接解析浮点数?

parseFloat(Math.round([elementnumberhere] * 100) / 100).toFixed(2);

【讨论】:

【参考方案2】:

为什么不只是(+elements[i].innerHTML).toFixed(2)

Working demo

【讨论】:

我试过并得到了这个值“NaN”。可能是因为数字有奇怪的格式 - 以空格开头:“ 1.23” 我想这不是问题,但您可以先进行修剪 @letiagoalves 为什么trim 会有所作为? @BenjaminGruenbaum 不知道。这是一个猜测 很公平 :) 作为记录,修剪不应该有所作为。

以上是关于Javascript - 用小数替换整数[重复]的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 之 限制输入框值的整数小数位数

JavaScript 之 限制输入框值的整数小数位数

JavaScript 之 限制输入框值的整数小数位数

用整数替换字符串中的重复单词

怎么将excel中的小数变成整数(不只是隐藏小数部分哦)?

用整数替换 node.js 中的 NaN [重复]