代码: local i1 = 1 print(i1) local i2 = 1,0 print(i2) local i3 = 1, print(i3) 结果: 1 1 nil 为什么i3是nil 而不是1呢。
除了少数例外,Lua忽略了空格和换行符。 则原来的代码可表示为local i3 = 1, print(i3)赋值语句首先计算其所有表达式,然后才执行赋值。所以打印在赋值之前, 但是最终i3被赋值为1。local i3 = 1, print(i3) --nilprint(i3) --1
除了少数例外,Lua忽略了空格和换行符。 则原来的代码可表示为
local i3 = 1, print(i3)
赋值语句首先计算其所有表达式,然后才执行赋值。所以打印在赋值之前, 但是最终i3被赋值为1。
local i3 = 1,
print(i3) --nil
print(i3) --1