Action Script 3 笔记

Action Script 3 笔记

注:有关 AS3(Action Script 3 简称)语言的重点内容。如果有其他语言的开发经验,如果过渡到AS3,以下内容是需要记住的,其他的依此类推即可。

1. AS3 中所有类型都是Object的子类,包括基本类型int,Nnumber,string也是如此,不存在类似java中int的包装类Integer一样。因此可以或直接对int类型的变量调用整数的方法
var i:int = 100;
trace(i.toExponential(2));
 
 
2. AS3 基本类型(String, int, unit, Number, Boolean)属于值传递(不可变对象),其他类型都是引用传递。
 
3. AS3 做精确计算时会有一些问题,例如
var f:Number = 0;
for (var i:int =0;i<10;i++)
  f+=0.1;
 
trace(f);// 结果是0.999999999999999
 
另外,数据相差过大的浮点数相加,结果出人意料,例如
1000000000000+0.001,返回值却是1000000000000,而不是期望的结果
 
具体可以参看《Flash.ActionScript3.殿堂之路》ch2.4
 
 
4. AS3 数组类型不支持类型化数组,即不能要求数组保存的元素保持某种特定类型,由于没有类型限制,所有元素初始化都是null
 
5. Object对象声明两种方式:
var foo:Object = new Object();
var bar:Object= {name:'', web:"abc.com"};// 同时声明属性
 
6. Object对象可以动态声明属性或者函数。
var kingda:Object = new Object();
kingda.name = 'happydagui';
kingda.hello = function() { trace('hello');}
 
可以使用.符号或者数组访问符号[]访问(适合动态访问属性的情况).访问所有属性:
for (var p in kengda) {
  trace(p);trace(kengda[p]);
}
 
 
7. Null,NaN,undefined,变量默认值等参看《Flash.ActionScript3.殿堂之路》ch2.4.8
判断字符串是否可以正确转换数组,使用!(Number('string')), 而不是Number('string')==NaN
 
 
8. typeof, is, as 类型相关操作符
as 如果对象时某个类型,返回该类型,否则返回null;is仅仅用于判断
 
 
9. delete只能用于删除对象动态属性
 
10. 关于函数部分,特别留意《Flash.ActionScript3.殿堂之路》ch4
 
 
 
 
 

本文出自 “ITer” 博客,请务必保留此出处http://happydagui.blog.51cto.com/6098465/1011545

你可能感兴趣的:(Flash,actionscript)