我如何得到一个数学表达式在一个变量与窗口提示

Javascript How do i get a mathematical expression in a Variable with window.prompt?

本文关键字:一个 变量 窗口 提示 表达式 何得      更新时间:2023-09-26

我有这个代码,它不能正常工作。正如你所看到的,我试着把一个公式放到一个数组中。这是以后用来计算数学用途的。但是程序没有把公式放在var所在的地方

<html>
<title> JavaScript Tutorial 1
</title>
<body>
<script language = "javascript">
var f, a, b, c, d, j, k, sum;
f = String(window.prompt("Formel"));
a = Number(window.prompt("untere grenze 1tes E"));
b = Number(window.prompt("obere grenze 1tes E"));
c = Number(window.prompt("untere grenze 2tes E"));
d = Number(window.prompt("obere grenze 2tes E"));


sum = 0;
for (j = a; j <= b; j++) {
    for (k = c ; k <= d ; k++) {
    sum += f;
    }
}
document.write(sum);
</script>
<noscript>
    <p> You have JavaScript Turned Off <p>
</noscript>
</body>
</html>

我这里有这个代码,它计算正确。但是我想把公式放到window. prompt

的变量中。
<html>
<title> JavaScript Tutorial 1
</title>
<body>
<script language = "javascript">
var f, a, b, c, d, j, k, sum;
//f = String(window.prompt("Formel"));
a = Number(window.prompt("untere grenze 1tes E"));
b = Number(window.prompt("obere grenze 1tes E"));
c = Number(window.prompt("untere grenze 2tes E"));
d = Number(window.prompt("obere grenze 2tes E"));
sum = 0;
for (j = a; j <= b; j++) {
    for (k = c ; k <= d ; k++) {
    sum += j * j * k;
    }
}
document.write(sum);
</script>
<noscript>
    <p> You have JavaScript Turned Off <p>
</noscript>
</body>
</html>

@ yellowsir,感谢您的输入,它与eval一起工作得很好,我理解安全性不足。因为我只是为自己使用这个项目,所以不会有人输入一些恶意代码的风险;)

这是我从你的输入中得到的解决方案:

<html>
<title> JavaScript Tutorial 1
</title>
<body>
<script language = "javascript">
var f, a, b, c, d, j, k, sum;
a = Number(window.prompt("untere grenze 1tes E"));
b = Number(window.prompt("obere grenze 1tes E"));
c = Number(window.prompt("untere grenze 2tes E"));
d = Number(window.prompt("obere grenze 2tes E"));
f = window.prompt("Formel");
sum = 0;
for (j = a; j <= b; j++) {
    for (k = c ; k <= d ; k++) {
    sum += eval(f);
    }
}
// document.write("<br>")
document.write(sum);
</script>
<noscript>
<p> You have JavaScript Turned Off <p>
</noscript>
</body>
</html>

希望一切都清楚了,不要犹豫。