我正在將Lua表的內容導出到HTML文件,以便我可以在瀏覽器中顯示內容。現在我遇到了將函數參數作爲表鍵的問題。作爲表鍵的Lua pass函數參數
我有一個稀疏表作爲這樣:
map = {}
for x = 1, 20 do
map[x] = {}
for y = 1, 20 do
map[x][y] = {}
map[x][y].node = math.random(1,20)
map[x][y].image = "path/to/image.png"
end
end
我穿過的所述臺到我的功能,例如: htmParser:_dumpSparseToHTML(地圖,20,20),其中地圖=表我想通過,20 ,20 =陣列的寬度和高度。 _dumpSparseToHTML中的某處將v.node和v.image的值寫入文件。如何在不知道表中鍵的名稱的情況下處理完全相同的事情?例如,map可以包含map [x] [y] .value,map [x] [y] .gfx,map [x] [y] .nodeType,我想將它們傳遞爲htmParser:_dumpSparseToHTML(map,20 ,20,value,gfx,nodeType等)。
我知道Lua可以通過將函數定義爲:_dumpSparseToHTML(map,20,20,...)來處理可變數量的參數。我試圖做到以下幾點:
--_table = map
for i,v in ipairs(arg) do
file:write("<td>".._table[x][y].v.."</td>)
end
我得到的錯誤是:「試圖串連場‘V’(一個零值) 所以,我的問題是:我如何通過一個可變數量的參數如表鍵?