如何在此代码中找到缺少的括号?

时间:2014-03-11 08:10:38

标签: lua corona

当我运行代码时,它告诉我有一个错误是')' expected near '='

function restartLvl()
    for i = 1, #balloonTexts do
        display.remove(balloonTexts[i])
        print ("restart level")
    end

    score.text = '0'
    ballRemain.text = '3'
    balloonText = {}
    createBalloons(1, 3)

    if (askUser.isVisible = true) then  --this is the line where the error occured
        askUser.isVisible = false
    end

    if (yesBtn.isVisible = true) then
        yesBtn.isVisible = false
    end

    if (noBtn.isVisible = true) then
        noBtn.isVisible = false
    end
end

我不知道它是如何遗漏')'的,因为我关闭了所有括号。

2 个答案:

答案 0 :(得分:7)

=是赋值运算符,==是测试相等性的运算符。将其更改为:

if (askUser.isVisible == true) then
    askUser.isVisible = false
end

还有其他所有人。为简单起见,可以省略括号()

if askUser.isVisible == true then
    askUser.isVisible = false
end

如果值是布尔值,您也可以这样做,因为所有非nilfalse的值都被视为true。

if askUser.isVisible then
    askUser.isVisible = false
end

答案 1 :(得分:0)

这与你的答案无关,但

我建议您使用lua glider IDE,因为使用此IDE可以很好地检测到此类型错误。