lua _G、_VERSION使用
到这里我们已经把lua基础库中的函数介绍完了,除了函数外基础库中还有两个常量,一个是_G,另一个是_VERSION。
_G是基础库本身,指向自己,这个变量很有意思,可以无限引用自己,最后得到的还是自己,比如_G._G._G._G._G == _G。
_VERSION的值是当前lua的版本号,比如我们可以执行以下语句输出当前运行的lua版本号:print(_VERSION)。
_G其实也是lua中全局变量存储的地方,如果我们在lua中定义一个全局变量,那么这个变量是挂载在_G中的,我们既可以直接访问也可以通过_G访问,比如以下语句:
a = 10
assert(a == _G.a)
那如果我们想得到所有全局变量的名称,要怎么做呢?很简单,_G本身一个table,我们只需要遍历这个table的key就行了,比如以下语句:
for k in pairs(_G) do
print(k)
end