gpt4 book ai didi

javascript - 如果第一个数字为零并且该数字大于 2 位,则进行替换

转载 作者:行者123 更新时间:2023-11-28 19:02:24 24 4
gpt4 key购买 nike

我正在使用一个计算器,但遇到了问题。为了防止用户无法将字段留空,如果字段留空,我将强制为零。这一切都很好,但问题是,当删除字段中的文本以删除零并输入新数字时,它会自动输入零,所以我的新数字如下所示:05

如果数字中有超过 2 个位置且第一个数字为零,则如何替换零?这是我的计算器使用的代码。

$(function(){

calculate();

$('.input').keypress(function (e) {
//if the letter is not digit then display error and don't type anything
if (e.which != 8 && e.which != 0 && (e.which < 48 || e.which > 57)) {
return false;
}
});

$('.input').on('keyup',function(){
if($(this).val()==''){
$(this).val('0');
}
calculate();
});

});

function calculate(){

var d6 = parseFloat(($('#d6').val()).replace(/,/g,''));
var d20 = parseFloat(($('#d20').val()).replace(/,/g,''));
var b20 = d6;
var e20 = parseFloat(($('#e20').val()).replace(/,/g,''));

var f20 = d20*e20;
var f22 = b20/f20;
var f23 = (52-f22)*f20;

$('#f20').html(formatCurrency(f20));
$('#f22').html(f22.toFixed(2));
$('#f23').html(formatCurrency(f23));

}

function formatCurrency(x) {
return '$'+x.toString().replace(/\B(?=(?:\d{3})+(?!\d))/g, ",");
}

最佳答案

如果您本质上是想将其转换为格式化数字,您可以尝试键入强制转换:

'' + new Number('')       // "0"
'' + new Number('0') // "0"
'' + new Number('05') // "5"
'' + new Number('0000.2') // "0.2"

关于javascript - 如果第一个数字为零并且该数字大于 2 位,则进行替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32277206/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com