缺少 ) 在 for 循环控制之后 - 计算器
missing ) after for-loop control - Calculator
我尝试为数学练习制作一个计算器,例如:x^2+2(2x+3)+3x
但是我总是 missing ) after for-loop control
在下面的代码中,我尝试找到最接近下一个 (
的运算符(+
或 -
)。
也许我只是失败了,两个 for()
合二为一,但从未发现那里有问题。
for (var i = 0; i < indexAuf.length; i++;) {
// Which operator is the closest to the "(" \
var maxPlus = 0;
var maxMinus = 0;
for (var j = 0; j < indexPlus; j++;) {
if (indexPlus[j] < indexAuf[i]) {
if (indexPlus[j] > maxPlus) {
indexPlusMax = indexPlus[j]
indexPlusMaxj = j
}
}
}
for (var l = 0; l < indexMinus; l++;) {
if (indexPlus[l] < indexAuf[i]) {
if (indexMinus[l] > maxMinus) {
indexMinusMax = indexPlus[l]
indexMinusMaxl = i
}
}
}
if (indexMinusMaxl > indexPlusMaxj) {
alert("indexMinusMaxl" + indexMinusMaxl);
} else {
alert("indexPlusMaxj" + indexPlusMaxj);
}
} else {
return;
}
如果您对如何改进代码有一些想法。我已经发布了完整的代码@Pasbin
谢谢。
删除for (var i = 0; i < indexAuf.length; i++;){/*...*/}
中的最后一个分号
编译器内部的for
循环语法规则是这样的:
for PARENTHESIS STATEMENT SEMICOLON EXPRESSION SEMICOLON STATEMENT PARENTHESIS BLOCK
末尾的另一个分号会导致语法错误。
错误消息暗示在“;”之前缺少“)”:
for (var i = 0; i < indexAuf.length; i++;) { }
正确的是:
for (var i = 0; i < indexAuf.length; i++) { }
我尝试为数学练习制作一个计算器,例如:x^2+2(2x+3)+3x
但是我总是 missing ) after for-loop control
在下面的代码中,我尝试找到最接近下一个 (
的运算符(+
或 -
)。
也许我只是失败了,两个 for()
合二为一,但从未发现那里有问题。
for (var i = 0; i < indexAuf.length; i++;) {
// Which operator is the closest to the "(" \
var maxPlus = 0;
var maxMinus = 0;
for (var j = 0; j < indexPlus; j++;) {
if (indexPlus[j] < indexAuf[i]) {
if (indexPlus[j] > maxPlus) {
indexPlusMax = indexPlus[j]
indexPlusMaxj = j
}
}
}
for (var l = 0; l < indexMinus; l++;) {
if (indexPlus[l] < indexAuf[i]) {
if (indexMinus[l] > maxMinus) {
indexMinusMax = indexPlus[l]
indexMinusMaxl = i
}
}
}
if (indexMinusMaxl > indexPlusMaxj) {
alert("indexMinusMaxl" + indexMinusMaxl);
} else {
alert("indexPlusMaxj" + indexPlusMaxj);
}
} else {
return;
}
如果您对如何改进代码有一些想法。我已经发布了完整的代码@Pasbin
谢谢。
删除for (var i = 0; i < indexAuf.length; i++;){/*...*/}
编译器内部的for
循环语法规则是这样的:
for PARENTHESIS STATEMENT SEMICOLON EXPRESSION SEMICOLON STATEMENT PARENTHESIS BLOCK
末尾的另一个分号会导致语法错误。
错误消息暗示在“;”之前缺少“)”:
for (var i = 0; i < indexAuf.length; i++;) { }
正确的是:
for (var i = 0; i < indexAuf.length; i++) { }