簡體   English   中英

在計算器中添加字符串而不是數字

[英]Adding strings and not numbers in a calculator

我對 JavaScript 相當陌生,而且這段代碼不是很先進。 我正在構建一個帶有兩個輸入和一個用於選擇操作的下拉菜單的簡單計算器。 每當我嘗試添加兩個輸入時,它都會添加字符串。 但是,所有其他操作都有效。 我認為問題出現在第 7 行: var total = n1 + n2; 這可能是添加字符串而不是數字任何解決方案?

        function calculate() {
                const n1 = document.getElementById("Num1").value;
                const n2 = document.getElementById("Num2").value;
                const e = document.getElementById("op");
                const oper = e.options[e.selectedIndex].text;
                   if (oper.normalize() === "+") {
                var total = n1 + n2;
            } else if (oper.normalize() === "-"){
                var total = n1 - n2;
            } else if (oper.normalize() === "*"){
                var total = n1 * n2;
            } else if (oper.normalize() === "/"){
                var total = n1 / n2;
            }
            document.getElementById("demo").innerHTML = total;
        }
    </script>
        <div style="background-color:rgb(225,225,225);border:1px solid black;margin-left:800px;margin-right:800px;"><br>
            <input id="Num1" placeholder="Input 1"><br><br>
                    <select id="op">
                        <option>+</option>
                        <option>-</option>
                        <option>*</option>
                        <option>/</option>
                    </select><br><br>
            <input id="Num2" placeholder="Input 2"><br><br>
            <button onclick="calculate()">Calculate</button><br><br>
        </div>
    <p style="color:red" id="demo"></p>

我使用了相同的代碼,它工作正常,但如果您遇到問題,請嘗試使用 parseInt(n1) 將字符串轉換為數字

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM