as” :主要用它做类型转化

假设有一个类叫做Class1,我们声明了一个它的对象 c1,如果想要将它转换成Class2类型,只要这样写:

  1. Class2(c1);

AS3 中的操作符: as 实现就是这样:

  1. c1 as Class2;

据说使用 as 操作符有几个好处

  1. 它的效果和第一种方法是一样的。
  2. 如果类型不兼容无法转换,就会返回null,而不是出错。这样你就可以自定义错误的时候该做什么。
  3. 没有运行时错误(Run Time Error)提示。

不过有些时候在使用 as 的时候并不能达到强制转换的目的,而使用第一种方法则可以。为什么 as 操作符有时候会不好用呢?原来在AS3.0类库中最高层类(Top Level classes,所有Top Level classes的列表)之间进行强制转换时, as 操作符是不起作用的。比如,假如你想要将一个String 类型的字符串 str 转换成 Number 类型的数字 num 时,可能想要这样写:

  1. num = str as Number;

这样写是没有用的,你只能通过第一种方法来达到强制转换的目的:

  1. num = Number(str);

实例:保留两位小数

  1. private var a:Number=3.1234;
  2. a=a.toFixed(2) as Number;
  3. trace(a);
  4. //输出:0
  5.  
  6. private var a:Number=3.1234;
  7. a=Number(a.toFixed(2));
  8. trace(a);
  9. //输出:3.12


Top Level classes 的列表(详情操作API文档,左侧顶部--》顶层)


"typeof ": 获取基本数据的类型

用法:

  1. alert(typeof (5)); //number
  2.  
  3. alert(typeof (true)); //boolean
  4.  
  5. alert(typeof ("abc")); //string

说明:

typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."


"instanceof ": 对象是否为某个类的实例

用法:

  1. trace(obj instanceof Panel);

说明:

如果 objectclass 的一个实例,则 instanceof 运算符返回 true 。如果 object 不是指定类的一个实例,或者objectnull ,则返回 false

  1. trace(objTest(new Date));
  2.  
  3. private function objTest(obj:Object):String {
  4. var i:Object;
  5. var s:String = ""; // 创建变量。
  6. var t:Array = new Array(); // 创建一个数组。
  7. t["Date"] = Date; // 充填数组。
  8. t["Object"] = Object;
  9. t["Array"] = Array;
  10. for (i in t) {
  11. if (obj instanceof t[i]) // 检查 obj 的类。
  12. {
  13. s += "obj is an instance of " + i + "\n";
  14. } else {
  15. s += "obj is not an instance of " + i + "\n";
  16. }
  17. }
  18. return (s); // 返回字符串。
  19. }
  20. /* obj is an instance of Object
  21. obj is an instance of Date
  22. obj is not an instance of Array */

is”: 对象是否为某个类的实例

在使用“instanceof ”的地方,IDE会提示:-3555: 已不再使用 instanceof 运算符,请改用 is 运算符。

【Flex教程】#009 As/typeof /instanceof /is的作用的更多相关文章

  1. 【FLEX教程】#008 开发中的问题笔记(慢更…)

    在这里记录一下个人在FLEX开发中遇到的一些问题.方便一些遇到同样问题的朋友们,能够快速的解决这些问题. 这篇笔记我会慢慢的更新,(PS:有遇到问题就往上面更….) 2015年1月4日 12:53:5 ...

  2. Flex教程

    详细教程: 1.基础知识:一劳永逸的搞定 flex 布局 2.阮一峰的flex教程:flex syntax   flex example

  3. php中 instanceof有什么作用

    php中 instanceof有什么作用 作用:(1)判断一个对象是否是某个类的实例,(2)判断一个对象是否实现了某个接口.

  4. 小tip:关于typeof,instanceof,toString(),valueOf(),toLocaleString(),join(),reverse(),sort(),pop(),push(),shift(),unshift()

    typeof:用于检测一个变量是否是基本数据类型.instanceof用于检测某引用对象是什么类型的对象. var s = "Nicho"; var b = true; var n ...

  5. valueOf() toString() typeof instanceof

    ******在chrome console中运行{a:1}.valueOf(); 报错:"SyntaxError: Unexpected token . ",这是由于{}被js引擎 ...

  6. typeof instanceof 之间的区别总结

        typeof   它返回值是一个字符串,该字符串说明运算数的类型. a=1; b=true; c="c"; d=function(){ console.log(" ...

  7. typeof instanceof

    typeof用以获取一个变量的类型,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefinedinstanceof用于判断一个 ...

  8. Javascript中typeof instanceof constructor的区别

    typeof typeof,是一个运算符,运算中需要一个操作数,运算的结果就是这个操作数的类型,运算的结果是一个字符串.他有一定的局限性,对于对象类型的值,只能得到一个object结果,却不能精确得到 ...

  9. 推断js中的类型:typeof / instanceof / constructor / prototype

    怎样推断js中的类型呢,先举几个样例: var a = "jason"; var b = 123; var c = true; var d = [1,2,3]; var e = n ...

随机推荐

  1. js 字符串转换为数值

    原帖地址:http://www.cnblogs.com/jenney-qiu/archive/2012/02/27/2369848.html 使用parseInt()你可以从字符串中获取数值,该方法接 ...

  2. 236. Lowest Common Ancestor of a Binary Tree

    Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree. According ...

  3. 在UIViewController中获得Container View里的embed viewController的引用

    When you want to use a controller you use the UIStoryboard method instantiateViewControllerWithIdent ...

  4. iphone dev 入门实例2:Pass Data Between View Controllers using segue

    Assigning View Controller Class In the first tutorial, we simply create a view controller that serve ...

  5. [物理学与PDEs]第1章习题参考解答

    [物理学与PDEs]第1章习题1 无限长直线的电场强度与电势 [物理学与PDEs]第1章习题2 均匀带电球面的电场强度与电势 [物理学与PDEs]第1章习题3 常场强下电势的定解问题 [物理学与PDE ...

  6. Web性能压力测试工具之ApacheBench(ab)详解

    PS:网站性能压力测试是性能调优过程中必不可少的一环.只有让服务器处在高压情况下才能真正体现出各种设置所暴露的问题.Apache中有个自带的,名为ab的程序,可以对Apache或其它类型的服务器进行网 ...

  7. 基于HTML5的多张图片上传

    图片上传之前也有写过demo,不过是单张上传的,最近有个业务需求是需要多张上传的,于是乎从新改写了一下 HTML结构: 1 2 3 4 <div class="container&qu ...

  8. 打造高性能Java应用需掌握的5大知识

    这篇文章节选自<java performance>,对java性能比较关心的同学大概都知道这本书,性能这个东西可能是很多同学在日常写java code的时候很少去关心的,但是在我们写cod ...

  9. python异常类型

    python2: BaseException +-- SystemExit +-- KeyboardInterrupt +-- GeneratorExit +-- Exception +-- Stop ...

  10. distinct 多个字段

    select distinct ID,AA,BB from tName与select distinct ID from tName有什么区别??第一种情况,distinct会不会影响AA,或者BB字段 ...