天天看點

Lua非常有用的工具——遞歸列印表資料

lua是一種非常小巧的語言。雖小,但五髒俱全。

在lua中,我認為最最核心的資料結構就是表。表不僅可用作數組,還可以用作字典。lua面向對象的實作也是用表實作的。

表對于lua實在是太重要了!是以,在開發與調試過程中,讓表可視化是非常迫切的需求。可lua标準庫裡沒有遞歸顯示表中所有資料的函數。

于是,憑着對lua的興趣,我寫了一個函數用于遞歸列印表中所有的資料。

廢話不多話,如下為源代碼:

該庫對外隻提供了3個函數:

table_print(table_name)        遞歸列印表中的所有資料

table_tostring(table_name)   将表轉換成字元串

table_lib_test()     子產品自測函數(測試用的)

将該源碼儲存在lua的庫路徑下的叫 table_lib.lua 檔案裡。在指令終端運作 lua

我們可以自己試一試:

就是這效果。

再試試列印 _g 表的内容,會有意想不到的驚喜。

當然,目前還不夠完善,隻能說是将就用,還有很多地方需要改進的。希望大家多多提意見。