第一版针对 Lua 5.0 编写。虽然在很大程度上仍然适用于后续版本,但仍有一些区别。
第四版针对 Lua 5.3,可在 亚马逊 和其他书店购买。
购买本书,您还可以帮助支持 Lua 项目


14 – 环境

Lua 将其所有全局变量保存在一个名为环境的常规表中。(更确切地说,Lua 将其“全局”变量保存在多个环境中,但我们暂时忽略这种多重性。)这种结构的一个优点是它简化了 Lua 的内部实现,因为不需要为全局变量使用不同的数据结构。另一个(实际上是主要的)优点是我们可以将此表作为任何其他表进行操作。为了方便此类操作,Lua 将环境本身存储在全局变量 _G 中。(是的,_G._G 等于 _G。)例如,以下代码打印在当前环境中定义的所有全局变量的名称

    for n in pairs(_G) do print(n) end

在本章中,我们将看到一些有用的技术来操作环境。