c#或者js 输入int类型数字后自动在后面加.00,输入double型保留小数点后两位

JavaScript029

c#或者js 输入int类型数字后自动在后面加.00,输入double型保留小数点后两位,第1张

<script>

//JS版

//将传入数据转换为字符串,并清除字符串中非数字与.的字符

//按数字格式补全字符串

var getFloatStr = function(num){

num += ''

num = num.replace(/[^0-9|\.]/g, '')//清除字符串中的非数字非.字符

if(/^0+/) //清除字符串开头的0

num = num.replace(/^0+/, '')

if(!/\./.test(num)) //为整数字符串在末尾添加.00

num += '.00'

if(/^\./.test(num)) //字符以.开头时,在开头添加0

num = '0' + num

num += '00' //在字符串末尾补零

num = num.match(/\d+\.\d{2}/)[0]

}

//测试

getFloatStr('0000.1') //0.10

getFloatStr('qwe') //0.00

getFloatStr('256') //256.00

</script>

js的变量没有严格的类型,在js中0表示整数0,“00”表示字符串。

在0 == “00”比较的时候,会将“00”转换成整型在比较,转换结果就是0 == 0,即true。

这么判断没有问题,但不推荐,在阅读代码、修改代码等方面都会有影响