如果有的话,在lua中
local table={}
table.variableA=1 -- this is local?
local table2=
{
local variable2=2 -- this is the same that above?
}
当我在本地表中声明函数时,它们都是本地的吗?
答案 0 :(得分:3)
函数不是 local ,它们只是值。它是局部变量还是非局部变量。例如,想象一下:
function foo_global() print 'foo' end
local foo_local = foo_global
您有两个变量,一个是全局变量,一个是局部变量,它们都包含相同的函数值。
将函数存储到表中时,它既不是全局变量也不是局部变量,因为它不是变量。该表可以存储在局部变量中,但这并不会真正影响函数本身,只是可以在其中访问它。
在表构造函数内部,即在花括号{
}
之间,您不能使用local
关键字,因为在那里没有意义。