Javascript padEnd()将0添加到错误的位置

Javascript padEnd()将0添加到错误的位置,javascript,html,dom,Javascript,Html,Dom,因此,我正在制作这个计算器应用程序,我即将完成它,但是我在使用padEnd()方法时编写的代码有一些错误,所以这里的想法是,当我键入一个分数为3.20的数字时,我需要它显示为3.20,而不是3.2。我用padEnd()成功地做到了这一点,如下所示: function getTotal() { d += Math.floor(re1); p += getValue(re1); if (p >= 24) { p -= 24; ++d;

因此,我正在制作这个计算器应用程序,我即将完成它,但是我在使用padEnd()方法时编写的代码有一些错误,所以这里的想法是,当我键入一个分数为3.20的数字时,我需要它显示为3.20,而不是3.2。我用padEnd()成功地做到了这一点,如下所示:

 function getTotal() {
    d += Math.floor(re1);
    p += getValue(re1);

    if (p >= 24) {
        p -= 24;
        ++d;
    }
    if (p < 10) {
        total = d + p / 10;
    } else {
        total = d + p / 100;
    }
    if (p % 10 === 0) {
        ptag.textContent = total.toString().padEnd(total.length + 1) + "0";
    } else
    {
        ptag.textContent = total;
    }
 }

function enter() {
    document.addEventListener("keyup", function(e) {
        if(e.keyCode == "13") {
            getTotal()
            input.value = input.value.substring(0, input.value.length - input.value.length);
            ptag.style.marginLeft = "11%";
            ptag.style.color = "#fff";
        }
    })
}

enter();

function plusBtn() {
    document.addEventListener("keyup", function(e) {
        if (/[+]/g.test(e.key)) {
            addNclear()
        }
    })
}

plusBtn();

function addNclear() {
getTotal();
input.value = input.value.substring(0, input.value.length - input.value.length);
}

function getValue(v) {
return +v.toString().match(/\.(\d*)/)[1] || 0;
}
函数getTotal(){ d+=数学层(re1); p+=getValue(re1); 如果(p>=24){ p-=24; ++d; } if(p<10){ 总数=d+p/10; }否则{ 总数=d+p/100; } 如果(p%10==0){ ptag.textContent=total.toString().padEnd(total.length+1)+“0”; }否则 { ptag.textContent=总计; } } 函数enter(){ 文件.附录列表(“键控”,功能(e){ 如果(例如,keyCode==“13”){ getTotal() input.value=input.value.substring(0,input.value.length-input.value.length); ptag.style.marginLeft=“11%”; ptag.style.color=“#fff”; } }) } 输入(); 函数plusBtn(){ 文件.附录列表(“键控”,功能(e){ 如果(/[+]/g.test(e.key)){ addNclear() } }) } plusBtn(); 函数addNclear(){ getTotal(); input.value=input.value.substring(0,input.value.length-input.value.length); } 函数getValue(v){ return+v.toString().match(/\.(\d*)/)[1]| 0; } 为了更好地演示这个问题,请访问我制作的并键入3.20+2.4,它应该=6,但由于我添加了padEnd,它输出60

现在,这个问题的全部目的是,当我键入一个分数时,如何使padEnd()只加零

如果你不想访问这个网站,我会添加一个有问题的图片


如果您有任何帮助,我们将不胜感激。

而且使用
来固定是否符合您的需要?@mbojko您能演示一下如何在回答中使用它吗。我还是一个初学者,我不知道如何准确地使用它,即使在我把这个
total.toString().padEnd(total.length+1)+“0”替换为
total.toFixed(2)
toFixed(2)
创建了一个在
后面正好有两个数字的字符串)。