Lua 中的 "for var = 1, 2" 循环

这种循环在 Lua 中的作用是什么?

for count = 1, 2 do
    -- 做一些事情
end

循环体内并没有使用变量 count

点赞
用户827263
用户827263

这个循环体会被执行两次。

除非需要知道目前的数值,否则不需要在循环体内引用 count

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

打印结果为

Hello
Hello
Hello
Hello
Hello
2018-01-03 02:19:39
用户2864740
用户2864740

在这种情况下,count 是一个“虚拟变量”-之所以叫做“虚拟变量”,是因为变量被用于完成特定的构造,_即使变量没有被使用_。(另一种常见的用法是下划线 _,尽管 count 可以说添加了一些语义意图。)

使用这样的虚拟变量是因为LUA 循环在语法结构中_要求_使用变量/赋值。但是,并没有要求必须使用该变量-因此是“虚拟”的。

.. 数字型 for 循环的语法如下:

for var=exp1,exp2,exp3 do
  something
end

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

2018-01-03 02:21:57