2014-10-27 47 views
1

有沒有辦法檢索表的名稱?例如,從這個表我想只提取鍵名「模擬」,「Molibdeno」,「塔瑪琳」,「Wrenna」檢索表名

UnitScanDB = { 
    profiles = { 
     Mimic = { 
     ... 
     }, 
     Molibdeno = { 
     ... 
     }, 
     Tamanrindo = { 
     ... 
     }, 
     Wrenna = { 
     ... 
     } 
    } 
} 
+0

表與每個其他Lua值(包括函數)一樣,沒有「名稱」。您正在詢問字段變量名稱(這是一個類型爲「字符串」的表鍵,它恰好滿足Lua標識符的要求,這簡化了語法)。因此,答案將是在表格中查找關鍵字的方法。 – 2014-10-27 17:56:23

回答

3

可以iterate在內表使用pairs

for k in pairs(UnitScanDB.profiles) do 
    -- handle k 
end 

使用上述循環,你可以,例如,複製所有的按鍵到一個新表:

local names = {} 
for k in pairs(UnitScanDB.profiles) do 
    table.insert(names, k) 
end 
0

您可以簡單地通過他們的名稱來訪問這些鍵,像這樣:

mimic = UnitScanDB.profiles.Mimic 
molibdeno = UnitScanDB.profiles.Molibdeno