如何通过 javascript 在浮点数中保留小数点数后的 2 位数字
How to keep 2 digits after decimal in a float through javascript
我有一个数字是0.233333333333
我希望它显示 0.23。我知道为此目的命名为 toFixed(( 的函数。我没有找到添加事件处理程序的确切 html 元素。我想用jQuery/javascript操作Dom,以便toFixed函数通过
0.2333333333333字符串并将其返回为0.23。谢谢。我希望我把自己说清楚了。
好的,从您链接到的网站来看,该值似乎位于特定元素中,如下所示:
<del>$0.23333333333333</del>
您可以通过多种方式修复该格式,例如:
$(document).ready(function() {
$("del").text(function(i, t) {
return "$" + (+t.slice(1)).toFixed(2);
});
});
也就是说,跳过美元符号,将当前文本从第二个字符开始带有 .slice(1)
,然后使用一元加号运算符将其转换为数字,以便您可以使用 .toFixed(2)
,然后在美元符号后将其连接回来。
演示:http://jsfiddle.net/u5Qmv/
或者使用正则表达式.replace()
只保留您想要的部分:
return t.replace(/('$'d+'.'d'd).*/, "$1");
演示:http://jsfiddle.net/u5Qmv/1/
或者.slice()
从字符串的开头到.
索引后面的两个字符(如果有可能没有.
你需要测试它,只有.slice()
如果有的话 - 我会把它留给你(:
return t.slice(0, t.indexOf('.') + 3);
演示:http://jsfiddle.net/u5Qmv/2/
说了这么多,你最好在服务器端做这个。
parseFloat(parseFloat("0.233333333333").toPrecision(2))
您可以使用 jQuery 中的 .html(( 函数来设置或获取 DOM 元素的值 - http://api.jquery.com/html/
$(selector).html(parseFloat(parseFloat("0.233333333333").toPrecision(2)))
更好的是,如果您提供 html 文件,您可以在服务器端执行此操作。如果您的网站是单页应用程序,则可以在模板呈现上执行此操作。
最坏的情况是,你在jQuery中完成它
$(function() {
// search for elements which contains value, iterate them and update the element
}
相关文章:
- 将数字四舍五入到小数点后两位
- 将数字四舍五入到小数点后两位,以设置货币格式
- 通过HTML5 / JS / PhoneGap使用带有小数点的数字键盘
- 使用AngularJS将HTML文件中的数字限制为小数点后2位
- Opera中的JSON解析抛出“非法数字格式(尾随小数点)”
- 在一些Android设备/Chrome上,HTML5数字输入中没有小数点
- 限制输入数字小数点前后的数字
- JS-忽略小数点后的数字
- 允许保存以小数点开头的数字
- 在小数点后给出一个固定宽度的 JavaScript 数字,同时保留一个数字
- 十进制数字的 Javascript 正则表达式 - 替换非数字和多个小数点
- 将 JavaScript 数字转换为小数点后两位
- 挖空 - 将输入限制为仅带有一个小数点的数字
- 更改为在小数点后添加 2 位数字
- Javascript 将数字舍入到小数点后 2 位
- 将数字舍入到小数点后两位,并删除任何其他小数点
- 如何使用javascript截断(不舍入)小数点后的特定数字
- 防止用户在小数点前 2 位数字后输入更多数字
- 我怎样才能对浮点数进行四舍五入,使小数点后只有两个尾随数字
- 字符串,数字小数点后2位