lua是一种非常小巧的语言。虽小,但五脏俱全。
在lua中,我认为最最核心的数据结构就是表。表不仅可用作数组,还可以用作字典。lua面向对象的实现也是用表实现的。
表对于lua实在是太重要了!所以,在开发与调试过程中,让表可视化是非常迫切的需求。可lua标准库里没有递归显示表中所有数据的函数。
于是,凭着对lua的兴趣,我写了一个函数用于递归打印表中所有的数据。
废话不多话,如下为源代码:
该库对外只提供了3个函数:
table_print(table_name) 递归打印表中的所有数据
table_tostring(table_name) 将表转换成字符串
table_lib_test() 模块自测函数(测试用的)
将该源码保存在lua的库路径下的叫 table_lib.lua 文件里。在命令终端运行 lua
我们可以自己试一试:
就是这效果。
再试试打印 _g 表的内容,会有意想不到的惊喜。
当然,目前还不够完善,只能说是将就用,还有很多地方需要改进的。希望大家多多提意见。