我正在尝试将计算字符串转换为JavaScript中的Number对象,但我无法找到执行所需作业的函数。
parseInt(String)
函数仅解析第一个计算次数,但不对其应用数学函数。
我所说的最小版本是这样的:https://jsfiddle.net/qd7u6h60/3/
如果有人有一个人,我会很高兴的
答案 0 :(得分:0)
alert(eval("12+13+5/5"))

这就是eval的用途。 Eval解析有效的js,Math操作是有效的JS。请注意以下
4^4 => is the binary XOR operator
//you want
4**4
答案 1 :(得分:0)
您需要使用eval()或parseInt。 更新了小提琴:https://jsfiddle.net/qd7u6h60/5/
$('button[name=calculate]').click(function() {
var calculation = $('input[name=calculation]').val();
var result = eval(calculation); /* Only parse the first number of the complete calculation */
$('input[name=result]').val(result);
});
答案 2 :(得分:0)
您可以使用eval()来计算值。 eval()函数评估表示为字符串的JavaScript代码。 eval()函数的参数是一个字符串。如果字符串表示表达式,则eval()计算表达式
请在下面找到代码段。我修改了你的例子
$('button[name=calculate]').click(function() {
var calculation = $('input[name=calculation]').val();
var result = eval(calculation); /* Only parse the first number of the complete calculation */
$('input[name=result]').val(result);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container-fluid">
<br/>
<div class="input-group">
<input type="text" name="calculation" class="form-control" placeholder="Calculation, eg: (5 - 2)/(7 + 4)">
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">=</span>
<input type="number" name="result" class="form-control" placeholder="Result" readonly>
</div>
<br/><br/>
<button type="button" name="calculate" class="btn btn-info">Calculate !</button>
</div>
&#13;