You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何执行输入框中的JavaScript公式得到对应计算结果

问题解决方法

问题原因

  • 当前代码中document.getElementById("hesap").value拿到的是字符串类型的公式文本,直接赋值只会原样输出文本,不会执行计算逻辑

调整方案

你只需要用eval()函数执行字符串形式的JS表达式即可,调整后的完整JS代码如下:

aaa = 500;
bbb = 350;
ccc = 25;
cal = document.getElementById("hesap").value;
// 将字符串公式传入eval执行计算
document.getElementById("calc").value  =  eval(cal);

计算逻辑验证

执行后计算过程为:
(500 + 350)*2 + 25 = 850*2 +25 = 1700 +25 = 1725,和你的预期结果完全一致。

可选优化方案

如果担心eval()的安全风险(开放给外部用户输入的场景下可能存在XSS注入问题),可以改用作用域更可控的new Function写法:

aaa = 500;
bbb = 350;
ccc = 25;
cal = document.getElementById("hesap").value;
// 仅在独立函数作用域执行表达式,不会污染全局作用域
document.getElementById("calc").value = new Function('aaa', 'bbb', 'ccc', `return ${cal}`)(aaa, bbb, ccc);

内容的提问来源于stack exchange,提问作者May

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 03:39:04