在Javascript计算器中获取NaN作为输出
我正在使用JavaScript创建一个简单的计算器。我写了一个函数来计算结果。但即使我使用了parseInt,我还是将NaN作为输出 HTML代码是:在Javascript计算器中获取NaN作为输出,javascript,html,Javascript,Html,我正在使用JavaScript创建一个简单的计算器。我写了一个函数来计算结果。但即使我使用了parseInt,我还是将NaN作为输出 HTML代码是: <div class="row" id="display"> <div class="col-sm-12"> <!--display here--> </div> </div> <div class="row" id="func">
<div class="row" id="display">
<div class="col-sm-12">
<!--display here-->
</div>
</div>
<div class="row" id="func">
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">1</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">2</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">3</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">+</button>
</div>
<div class="row" id="func">
<button type="button" class="btn btn-lg btn-secondary" id="zero-btn" onclick="myFunction(this)">0</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">.</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="calculate()">=</button>
</div>
<div class="row" id="display">
</div>
由于HTML代码的原因,出现了错误。 元素内部不应该有任何id为“display”的内容。 正确的代码是:
<div class="row" id="display">
<div class="col-sm-12">
<!--display here-->
</div>
</div>
<div class="row" id="func">
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">1</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">2</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">3</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">+</button>
</div>
<div class="row" id="func">
<button type="button" class="btn btn-lg btn-secondary" id="zero-btn" onclick="myFunction(this)">0</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="myFunction(this)">.</button>
<button type="button" class="btn btn-lg btn-secondary" onclick="calculate()">=</button>
</div>
<div class="row" id="display">
</div>
错误在于str变量包含:
<div class=\"col-sm-12\">
<!--display here-->
</div>
Calculation
这不是制作计算器的最好方法,而是按照你的方式 首先编辑Html代码并将显示Id添加到col Div
<div class="col-sm-12" id="display">
</div>
然后使用split获取数字,记住两个以上的数字是行不通的
var NumberOne = str.split(operator)[0];
var NumberTwo = str.split(operator)[1];
将数字解析为int
var op1 = parseInt(NumberOne);
var op2 = parseInt(NumberTwo);
切换运算符变量
switch(operator){ ..
....
现在它工作了打印op1和op2的值,检查值是否为正确的整数。然后检查生成op1和op2的步骤…@Drashti这就是问题所在,获取输入值时出现问题。
switch(operator){ ..
....