当前位置:  开发笔记 > 编程语言 > 正文

输入字段值 - 删除前导零

如何解决《输入字段值-删除前导零》经验,为你挑选了6个好方法。

我在Javascript中有一个文本框.当我进入'0000.00'文本框时,我想知道如何将其转换为只有一个前导零,例如'0.00'.



1> 小智..:

更简化的解决方案如下.看一下这个!

var resultString = document.getElementById("theTextBoxInQuestion")
                           .value
                           .replace(/^[0]+/g,"");


完善?呃......它不起作用:`'0000.00'`变为''.00'
@MikeM,则可以使用`replace(/ ^ [0] + / g,“ 0”)`

2> MikeM..:
str.replace(/^0+(?!\.|$)/, '')

  '0000.00' --> '0.00'   
     '0.00' --> '0.00'   
  '00123.0' --> '123.0'   
        '0' --> '0'  



3> heeen..:
var value= document.getElementById("theTextBoxInQuestion").value;
var number= parseFloat(value).toFixed(2);


如果小数点左边的零数非常大,是否会导致任何问题?

4> paxdiablo..:

听起来你只想删除前导零,除非只剩下一个(整数为"0"或浮点数为"0.xxx",其中x可以是任何东西).

这对于第一次切割应该是好的:

while (s.charAt(0) == '0') {            # Assume we remove all leading zeros
    if (s.length == 1) { break };       # But not final one.
    if (s.charAt(1) == '.') { break };  # Nor one followed by '.'
    s = s.substr(1, s.length-1)
}



5> Somnath Mulu..:

您可以使用此代码:




6> ncubica..:

确定一个简单的解决方案。唯一的问题是,当字符串为“ 0000.00”时,结果为纯0。但是除此之外,我认为这是一个不错的解决方案。

var i = "0000.12";
var integer = i*1; //here's is the trick...
console.log(i); //0000.12
console.log(integer);//0.12

在某些情况下,我认为这可行...

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有