如何通过 javascript 在浮点数中保留小数点数后的 2 位数字

How to keep 2 digits after decimal in a float through javascript

本文关键字:数字 小数点 保留 javascript 何通过 浮点数      更新时间:2023-11-18

我有一个数字是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
 }