为什么如果返回break结束在Lua里面for循环不起作用

时间:2015-04-29 16:35:28

标签: lua

我有以下函数检查给定参数是否作为键值表中的键被找到。如果是这种情况,则应返回true并退出循环。如果一无所获,那就什么都不做。

function checkId(id)
  for k,v in pairs(info) do
    if id == tostring(k) then
      return true
      break -- break out of loop. mission accomplished.
    end
  end
end

我得到了

  '结束'预期(在第192行关闭'do')'break'附近

当我尝试运行此脚本时。我错过了什么?

1 个答案:

答案 0 :(得分:4)

从逻辑上讲,你不能return break

return立即退出该功能(因此您不需要break)。

该特定错误是因为lua return必须是块中的最后一个语句。