什么是正确的方法来做一个条件,哪些检查的东西是或不是空的Lua? if x == ""
和f x ~= ""
似乎不起作用。
什么是正确的方法来做一个条件,哪些检查的东西是或不是空的Lua? if x == ""
和f x ~= ""
似乎不起作用。
Lua是一个基于动态类型的语言。
任何变量可以保存下列类型之一:零,布尔,数,串,表,功能,螺纹,或用户数据。
表中没有值的表中的任何变量(包括_G
,全局变量所在的表)在索引时给出的值为nil
。当你设置一个表变量为nil
时,它实质上是“未声明”它(完全从内存中删除条目)。
当声明一个local
变量时,如果未立即分配它,则会给出值nil
。与表变量不同,当您将local
变量设置为nil
时,它确实不是而是“undeclare”它(它只有一个值nil
)。
在Lua中,一个空字符串(""
)仍然是一个“值” - 它只是一个大小为零的字符串。
您的字符串中可能有空格,换行符或其他不可见字符。所以你认为它是“空的”,但事实并非如此。这通常发生在您从用户处获得输入时,并且必须键入“enter”才能完成 - “enter”结束于字符串中。
你需要的是一个函数,告诉你字符串是否为空 - 空或空格/制表符/换行符列表。下面是做这件事:
我最近遇到这个问题跑了为好。如果数据库值为“空白”(非空),LuaSQL会返回空字符串。哈克的方法,但这里是我如何解决它:
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。