Lua中的“for var = 1,2”

时间:2018-01-03 02:15:42

标签: for-loop lua

这种循环在Lua中做了什么?

for count = 1, 2 do
    -- do stuff
end

变量count未在循环体中使用。

2 个答案:

答案 0 :(得分:5)

它执行循环体两次。

除非你需要知道它的当前值,否则不需要在循环内引用count

for count = 1,5 do
    print("Hello")
end

打印

Hello
Hello
Hello
Hello
Hello

答案 1 :(得分:2)

在这种情况下,count是“虚拟变量” - “虚拟”,因为即使变量未被使用,变量也会使用某个构造。 (这种用法的另一个常见名称是_,尽管count可以说会增加更多的语义意图。)

使用这样的虚拟变量是因为LUA loops require a variable / assignment in the grammar construct。但是,不要求使用变量 - 因此是“虚拟”。

  

.. [loop] 的数字具有以下语法:

for var=exp1,exp2,exp3 do
  something
end
     

该循环将为exp1到exp2 的var的每个值执行一些操作,使用exp3作为增加var的步骤。第三个表达式[exp3]是可选的;当缺席时,Lua假设一个[1]作为步长值。