用js模拟计算器进行计算
今天我们来讲一下怎么使用js来模拟计算器的加减乘除基本运算。代码如下:
<h1>计算器</h1>
<input type="number" name="" id="num1">
<br>
<input type="number" name="" id="num2">
<br>
<button onclick="func('+')">+</button>
<button onclick="func('-')">-</button>
<button onclick="func('*')">×</button>
<button onclick="func('/')">÷</button>
<h2>结果:<span id="res"></span></h2>
JavaScript代码:
var res;
var oNum1 = document.getElementById("num1");
var oNum2 = document.getElementById("num2");
var aBtns = document.getElementsByTagName("button");
var oText = document.getElementById("res");
function func(x) {
var oVal1 = Number(oNum1.value);
var oVal2 = Number(oNum2.value);
res = eval(oVal1 + x + oVal2);
console.log(res);
oText.innerText = res;
}
代码的实现过程中出现了一个问题,就是当我们将函数进行封装后,参数传进来,进行字符串的拼接,将不再对数值进行计算,而是直接进行字符串的拼接,所以需要用到eval()函数。
eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行。
如果参数是一个表达式,eval() 函数将执行表达式。如果参数是Javascript语句,eval()将执行 Javascript 语句。
语法:
参数 | 描述 |
string | 必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。 |
视频讲解链接:
1.https://www.bilibili.com/video/BV1na4y1e7Me/