请帮助理解选项1和2中最佳实践的差异。
我需要的是从b.lua
中的文件a.lua访问is,变量我有两个文件a.lua和b.lua:
选项1 :(我从b.lua中的a.lua访问一个全局变量)(这是有效的)
a.lua
name = "hello world"
b.lua
require("a")
print(name)
选项2 :(这也正常)
a.lua
local config = {}
config.name = "hello world"
return config
b.lua
local config = require("a")
print(config.name)
在上面的两个选项中,我都可以从b.lua中的a.lua获取变量名。 请帮助了解哪个选项更好。
感谢您的帮助。
...问候
答案 0 :(得分:1)
选项2不会写入全局环境,如果您正在为其他人编写库,这是一件好事。
如果你只为自己写一些东西,两种选择都很好。
尽管如此,如果您使用选项1作为配置文件,那么即使在这种情况下,选项2也很有用,因为通过遍历小表比通过遍历整个全局环境更容易保存配置(当然,这也是一张桌子。