Как применить арифметическую c операцию с общим значением первого вычисления в калькуляторе JQuery - PullRequest
0 голосов
/ 04 февраля 2020

Я пытаюсь сказать, как я могу сделать эту операцию в этом калькуляторе. Например, если я делаю этот расчет в этом калькуляторе, 2 + 2 = 4, в этом ответе на расчет 4, я хочу сделать новый расчет с ответом предыдущего уравнения. например, ответ предыдущего уравнения равен 4, и я хочу, чтобы 2 + 2 = 4, а затем 4 + 2 = 6.

<body>
    <input type="text" class="input">
    <button class="oprator" id="butn4">4</button>
    <button class="oprator" id="butn6">6</button>
    <button id="butnplus">+</button>
    <button id="equal">=</button>
</body>


<script>
    $(document).ready(function () {
        var evaluated = false;
        $(".oprator").click(function () {
            const val = evaluated ? $(this).text() : ($(".input").val() + $(this).text())
            $(".input").val(val)
            evaluated = false;
        });

        $("#butnplus").click(function () {
            $(".input").val($(".input").val() + $("#butnplus").text())
        });
        $("#equal").click(function () {
            $(".input").val((eval($(".input").val())))
            evaluated = true;
        });
    });
</script>

1 Ответ

0 голосов
/ 04 февраля 2020

Привет, ты можешь использовать функцию eval для оценки своего выражения.

$(document).ready(function () {
        $("#butnplus").click(function () {
           if($(".input").val()=="")
              return false;
           else{
              $(".input").val($(".input").val() + $(this).text())
           }
        });
         $("#butn4").click(function () {
             if($(".input").val()=="")
               $(".input").val($(this).text())
           else{
              $(".input").val($(".input").val() + $(this).text())
           }
        });
        $("#butn6").click(function () {
           if($(".input").val()=="")
               $(".input").val($(this).text())
           else{
              $(".input").val($(".input").val() + $(this).text())
           }
        });
        $("#equal").click(function () {
            $(".input").val(eval($(".input").val()))
        });
     
    });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body>
    <input type="text" class="input">
    <button class="oprator" id="butn4">4</button>
    <button class="oprator" id="butn6">6</button>
    <button id="butnplus">+</button>
    <button id="equal">=</button>
</body>
...