3

用户将布尔值设置为 true 或 false。

确实如此(示例)

ElementNameone = true
ElementNametwo = false
ElementNamethree = true

等等。

现在我有一个从文件加载的字符串。名为 name 的字符串可以具有 Nameone、Nametwo、Namethree 等值。一次是其中的任何一个。现在我希望能够做到这一点

if Element .. name == true then
do something

除了我不知道如何正确地做到这一点。

我试过做

if not not ("Element" .. name) then

但它不起作用。

任何人都可以帮忙吗?

谢谢

4

2 回答 2

5

尝试这个:

if _G["Element" .. name] == true then
    -- do something
end

请注意,这仅在用户设置的变量(ElementNameone, .. 等)是全局变量时才有效。

于 2013-09-03T22:35:55.700 回答
2

您很可能正在解决错误的问题。

你说“用户”设置这些变量。如何?最终用户通常不会直接与程序中的变量进行交互。

您可以改用表ElementNameone作为键和true/或false作为关联值吗?如果是这样,那会干净得多。

于 2013-09-04T00:45:23.227 回答