2个小数位的JS计数器[重复]

Posted

技术标签:

【中文标题】2个小数位的JS计数器[重复]【英文标题】:JS Counter To 2 Decimal Places [duplicate] 【发布时间】:2015-11-07 13:18:31 【问题描述】:

所以我正在开发一个简单的自动计数器,它会在几秒钟内增加而不是目标目标数字,然后只是说明完成循环需要多长时间。

我的 parseFloat 函数目前有此代码,但无法弄清楚如何只显示 2 位小数。本质上,它必须看起来像英镑。所以 1.99、2.00、2.01、2.02 等,而不是重复出现的数字。

    var secs = 100;
    setInterval(function() 
    var $badge = $('#nhb_01');
    $badge.text(parseFloat($badge.text())+0.01);
, secs);

感谢任何帮助!我不是一个 JS 编码员!

谢谢:)

当前JSFiddle

【问题讨论】:

使用toFixed(2)developer.mozilla.org/en-US/docs/Web/javascript/Reference/… 【参考方案1】:

尝试使用.toFixed(decimalpoints)。还要记住,从.toFixed() 返回的结果将是string

var secs = 100;
setInterval(function() 
    var $badge = $('#nhb_01');
    $badge.text((parseFloat($badge.text())+0.01).toFixed(2));
, secs);

DEMO

【讨论】:

@RejithRKrishnan 不在代码中。正确的? :) 无论如何感谢您的指点。好像有人帮我改正了。【参考方案2】:

你可以试试这个:

var secs = 100;

setInterval(function() 
    var $badge = $('#nhb_01');
    var text = parseFloat($badge.text())+0.01;

    $badge.text(Math.round(text*100)/100));
, secs);

【讨论】:

【参考方案3】:

你可以这样做:

https://jsfiddle.net/g4jm68vp/

var secs = 100;
setInterval(function() 
    var $badge = $('#nhb_01');
    $badge.text((Math.round(parseFloat($badge.text(), 10) * 100) + 1) / 100);
, secs);

【讨论】:

以上是关于2个小数位的JS计数器[重复]的主要内容,如果未能解决你的问题,请参考以下文章

[HAOI2010] 计数 - 数位dp,组合数

js------科学计数法转换为正常小数

控制科学计数法中的小数位数[重复]

(计数器)NOIP模拟赛(神奇的数位DP题。。)

以科学计数法显示小数

JS计数重复出现