padEnd () добавляет 0 в неправильном месте - PullRequest
0 голосов
/ 05 февраля 2020

, поэтому я делаю это приложение для калькулятора, и я близок к его завершению, но что-то не так с кодом, который я написал специально при использовании метода 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;
}

, чтобы лучше продемонстрировать проблему, посетите этот codepen , который я сделал, и введите 3.20 + 2.4, он должен = 6, но вместо этого он выводит 60 из-за того, что я добавил padEnd.

Теперь вся цель этого вопроса в том, как сделать так, чтобы padEnd () добавлял ноль только при вводе дроби?

Я буду Добавьте изображение с проблемой, если вы не хотите посещать кодовое поле

image with the problem

Любая помощь будет оценена и спасибо в авансовый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...