【发布时间】:2014-07-09 20:34:38
【问题描述】:
对于深度嵌套表中的字段,例如 text.title.1.font。即使你使用
if text.title.1.font then ... end
如果表的任何级别实际上不存在,则会导致诸如“尝试索引全局'文本'(一个零值)”之类的错误。当然,可能会尝试检查表的每一级是否存在,但这似乎相当麻烦。我想知道是否有一种更安全、更漂亮的方法来处理这个问题,这样在引用这样的对象时,nil 将是值而不是触发错误?
【问题讨论】:
-
debug.setmetatable(nil, {__index = function()end})
标签: debugging lua lua-table meta-method