• as3 运算与检查String 是否能够正确转换成数 值


    如果忘了对一个Number 型变量初始化,那么这个变量参与的任何数学运算的结果都是NaN;如果最终结果赋值给有声明类型的变量,那么为该变量的默认值(仅限uint ,int)。

    var a:Number; //先声明一个没有初始化的Number变量a
    var b:Number = 10; //再声明一个值为10 的Number变量b
    var c:Number = a+b; //声明变量c、d、e,分别将不同的a和b的数学运算结果赋值给它们
    var d:Number = b-a;
    var e:Number = a*b;
    var f:int = b-a; //声明一个int 型变量f 和一个uint型变量h
    var h:uint = b+a; //将不同的a和b 的数学运算结果赋值给它们
    trace(c); //输出:NaN表示c 也成了一个未初始化的变量
    trace(d); //输出:NaN
    trace(e); //输出:NaN
    trace(f); //输出:0:由于f 是int 型,所以变成了int型的默认值0
    trace(h); //输出:0:同理h也是变成了uint型的默认值0
    
    var aa:String=String(a+5);
    var dd:Object=(a+5);
    trace(aa,dd) //输出:NaN NaN


    当String 类型转换成数值类型时,判断String 是否能够正确转换成数
    值,请不要用:
    Number("string")==NaN
    这样返回的永远都是false。应当使用:
    !(Number("string"))
    进行一次Boolean 值转换。

    Boolean型的默认值是false了。String 型的默认值成了null。Array、Object
    和其他一切Flash Player内置类或者用户创建的类默认值都是null。未定义类型
    的变量默认值才会是undefined。
    如果我们将默认值赋值给不相同的类型,那么会自动转换成被赋值类型的默
    认值。如,var b:Boolean = NaN,那么trace(b)得到的结果将是Boolean型的
    默认值false。

      

  • 相关阅读:
    Mysql主从复制(基于Log)
    Linux系统开机启动流程
    JS的 验证组织机构的合法性
    Linux以下基于TCP多线程聊天室(client)
    浅谈Java集合框架
    疯狂Java学习笔记(72)-----------大话程序猿面试
    Android自己定义View之组合控件 ---- LED数字时钟
    C/C++学习:函数指针
    springmvc+spring+jpa(hibernate)+redis+maven配置
    数组进行多少次OP操作,才干有序
  • 原文地址:https://www.cnblogs.com/dt1991/p/7750765.html
Copyright © 2020-2023  润新知