|
Jerome Vuarand wrote:
Gergo Szakal wrote:if table[key] then ... end means that if the given key in the table is non-nil, then...Note that false is a valid table value, and in that case the test above will fail. To be sure a key is not used check explicitly against nil.
Yes, that's a bad habit from C (or older Lua versions...).I always test explicitly against nil, even when there is no ambiguity, and use the if foo then only with variables I know being booleans.
Idem in other languages, whatever their tolerance for this idiom. Just a personal policy, of course. -- Philippe Lhoste -- (near) Paris -- France -- http://Phi.Lho.free.fr -- -- -- -- -- -- -- -- -- -- -- -- -- --