带小数的前导零,Javascript

Posted

技术标签:

【中文标题】带小数的前导零,Javascript【英文标题】:Leading zeros with decimal, Javascript 【发布时间】:2014-04-22 17:31:25 【问题描述】:

我有一个输入数字的键盘,用于输入付款。

有了这个,我有前导零,并想知道有效处理/删除它们的最佳方法。

JSfiddle of the keypad

JS/JQ

$(".button_epos_e").click( function() 

    btn_id = $(this).attr("id");                          
    btn_num = btn_id.replace("pay_", "");
    // alert(btn_num);

    decimal = $("#number").text();
    // alert(decimal);
    var truenumber = decimal.replace(".", "");
    // alert(truenumber);

    truenumber += btn_num;
     //alert(truenumber);

    postDecimal = truenumber.slice(-2);
    // alert(postDecimal);
    preDecimal = truenumber.replace(postDecimal, "");
    preDecInt = parseInt(preDecimal);
    // alert(preDecimal);
    newDecimal = preDecimal+"."+postDecimal;

    $("#number").html(newDecimal);  


);

【问题讨论】:

【参考方案1】:

有很多东西需要改变。但这应该足以满足您的需求:

preDecimal = +truenumber.slice(0, -2) + "";

+truenumber.slice(0, -2) 部分将字符串转换为数字,删除不必要的前导零,并添加空字符串将其转换回字符串(虽然这不是必需的)。

【讨论】:

我尝试了几条路线,但都没有成功,但这是完美的。我现在正在阅读更多关于 slice 的内容,非常感谢。

以上是关于带小数的前导零,Javascript的主要内容,如果未能解决你的问题,请参考以下文章

删除前导零和尾随零并将结果保留到小数点后两位

XSLT 1.0 删除前导零并将小数点添加到值

在R中的小数位前添加零

Javascript切片日期/时间带前导零

格式字符串,带前导零的整数

不带前导零的日期时间对象