isNaN解盲

因为以前felx组件默认是-99999999,后来因为方便组件和数据库的操作,就统一修改Number类型的数据为NAN类型了,然后通过isNaN去判断,而然很多表达式是返回字符串的或者null,要注意isNaN(null)是返回false,而isNaN(NaN)返回true

返回值定义式: 如果该值为NaN(非数字),则返回true;否则返回false。

参考api文档的说明如下:
public function isNaN(num:Number):Boolean
参数:
num:Number— 要计算的数值或数学表达式。
返回Boolean— 如果该值为NaN(非数字),则返回true;否则返回false。

如果该值为NaN(非数字),则返回true。
isNaN()函数可用于检查一个数学表达式是否成功地计算为一个数字。
NaN值是Number数据类型的特殊成员,用来表示“非数字”值。

注意:
1)含有不能转换成数字的字符才输出true,对于空字符串和空对象(NULL)都能转换,输出false。
2)NaN值不是int或uint数据类型的成员,isNaN(NaN)返回true。

下面是几个例子:

例子一:


public function Test() {


      var A:int =1;
           var B:Number =3.69;
      var C:String ="";
      var D:String ="22";
      var E:String ="a2";
      var F:String =null;

      var G:Numer =NaN;

 


     trace(isNaN(A));
     trace(isNaN(B));
     trace(isNaN(C));
     trace(isNaN(D));
     trace(isNaN(E));
     trace(isNaN(F));

    trace(isNaN(G));
     } 
      }
}
//-------------------结果--------------

false
false
false
false
true
false

true

例子二:

下表描述 isNaN()针对各种输入类型和值的返回值。
输入类型/值
例如:
isNaN(0/0)的结果为true
非零数字isNaN(5/0)的结果为false
负数的平方根isNaN(Math.sqrt(-1))的结果为true
大于1或小于0的数字的反正弦isNaN(Math.asin(2))的结果为true
可以转换为Number的字符串isNaN("5")的结果为false
无法转换为Number的字符串isNaN("5a")的结果为true

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值