Math.evaluate不是函数



im在使用MathJs&得到这个错误:Math.evaluate不是一个函数

<script src=" https://cdnjs.com/libraries/mathjs"></script>
Do-Math :<input id="formula" />
<button onclick="goCalc()">Go</button>
results:<input id="resTxt"/>
<script type="text/javascript">
function goCalc() {
let  Mformula = $("#formula").val();//the formula im trying to get =6*4+2^2
var res = document.getElementById("resTxt");
// res.setAttribute("value", Mformula);
var mat = Math.evaluate(Mformula);
res.setAttribute(mat);
console.log(mat);
}

根据所显示的代码,您可能会遇到多个问题。目前还不清楚哪些是真正的问题,哪些可能与打字错误等有关,所以这里有一个完整的例子,演示如何包括库,以及在每次输入元素更改时评估其文本值,并将结果写入另一个元素:

body { font-family: sans-serif; } #expression, #result { font-family: monospace; font-size: 1rem; } #expression { padding: 0.5rem; }
<label>Expression: <input id="expression" value="6 * 4 + 2 ^ 2" /></label>
<pre><code id="result"></code></pre>
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjs/11.0.1/math.min.js" integrity="sha512-B82WLflI1EQiR9sGbIV1ddGVvK4ghj1xjMShL7YvcOrHjX2qP72lHztT1DxBVPiz1aTR6mOUJbtwj06uadL2GA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script type="module">
const input = document.getElementById('expression');
const output = document.getElementById('result');
function evaluate () {
const expression = input.value.trim();
let result;
try {
result = math.evaluate(expression);
}
catch (ex) {
if (ex instanceof Error) result = ex.toString();
else throw ex;
}
output.textContent = result;
}
input.addEventListener('input', evaluate);
evaluate();
</script>

最新更新