TC官方合作论坛

标题: 求助关于null值的问题 [打印本页]

作者: kftianji    时间: 2018-9-19 20:03
标题: 求助关于null值的问题
本帖最后由 kftianji 于 2018-9-19 20:06 编辑

试做一个加减乘除的计算器,A值B值从aft1和aft2编辑框中填写获得
  1.     var A,B,ansa
  2.     A=editgettext("aft1")
  3.     B=editgettext("aft2")
  4.     if((A=null)||(B=null))//问题出在这里
  5.       text(A)//弹窗 检测
  6.     else
  7.         ansa=ans(A,B)
  8.         staticsettext("ans",ansa)
  9.     end
复制代码


当aft1或aft2不填写任何值时if语句中A,B变量的值是" ",不是null,所以if判定直接跳过去到eles了
编辑框无数值时没法弹出提示窗口了

另一个问题,两个编辑框内输入的非数值时也会运算(ASCII码),有简易判定是否是数字的方式么
作者: zxczxc1968531    时间: 2018-9-19 20:23
本帖最后由 zxczxc1968531 于 2018-9-19 20:25 编辑

直接这样判断,if(A == "" || B  == ""),而不是填null,只在变量未定义时获取到的值才是null,调试输出会直接把nulll转换成字符串的空“”另外,要判断是不是数字,可以用 是否整型()这个API

作者: OOOO    时间: 2018-9-19 22:33
某键精灵过来的吗? 比较两个值是否相等用"=="不用判断编辑框是否位数字,直接设置编辑框为数字类型,这样只允许填写数字
作者: kftianji    时间: 2018-9-20 22:15
OOOO 发表于 2018-9-19 22:33
某键精灵过来的吗? 比较两个值是否相等用"=="不用判断编辑框是否位数字,直接设置编辑框为数字类型,这样只允 ...

谢谢指点,把判断的 ==和赋值的=给忘了,没有两位指点就老找不到问题的原因。




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1