快速业务通道

AS 数据类型的一些探索

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-12


AS 数据类型的一些探索(1) 无聊的时候随便看看MM Flash的文档,在Actionscript_ref中看到了int这个关键字,以前因为习惯了CJava的写法,在写AS的时候也会错写到int,我知道它是AS的关键字,但是一直不知道它的作用,这回我仔细的看了看。 int
Availability
Flash Player 4. This function was deprecated in Flash 5 in favor of Math.round().
Usage
int(value)
Parameters
value A number to be rounded to an integer.
Returns
Nothing.
Description
Function; converts a decimal number to an integer value by truncating the decimal value. This
function is equivalent to Math.floor() if the value parameter is positive and Math.ceil() if
the value parameter is negative.
See also
Math.floor(), Math.ceil()大致意思是,intFlash Player 4时就已经出现了,Flash 5是用于四舍五入的一个函数,并且与Math.floor(), Math.ceil()有着比较密切的联系。于是,我就想,趁这个空闲有必要去深入学习一下Flash数据类型、以及类型转换方面的知识。 不管怎么说,int这个东西还是要先试试才可以知道它具体的功用的: a=2.9;
b=3.1;
c=-2.9;
d=-3.1;

trace("int(a)="+int(a)+";int(b)="+int(b));
trace("int(c)="+int(c)+";int(d)="+int(d));
输出 int(a)=2;int(b)=3
int(c)=-2;int(d)=-3看来并非是四舍五入哦,奇怪了。在金山糍粑中有一行解释了round这个词:弄圆, 使成圆形, 绕行, 完成, 围捕, 四舍五入。看来这里不好把round解释为四舍五入,应该是“弄圆”引申一下就是弄完整,再引申一下就是求整,于是,我这里得出了结论: int函数是用来小数求整的。
Flash的基本数据类型: Flash包含以下几种最基本的数据类型:String ,Number,Boolean,Object, MovieClip,Null, UndefinedString就是字符串。Number就是数值类型。Boolean是逻辑类型Object就是object类型(白说),它是一组属性的集合。MovieClip是在AS中唯一包含图形元素的数据类型。Null数据类型仅有一个值null。表示变量还没有受到数据,变量还未赋值等。Undefined数据类型也只有一个undefined值,用于一个变量还未被赋值,听起来似乎和null差不多。不过等一下还是要做一些测试的,看看到底有什么不同。不过首先要来看看一个比较有用的函数typeof,这个函数可以用来确定变量到底是什么类型的。看看测试代码: var a:String;
var b:Number;
var c:Boolean;
var d:MovieClip;
var e:Object;

trace("Type_a="+typeof(a));
trace("Type_b="+typeof(b));
trace("Type_c="+typeof(c));
trace("Type_d="+typeof(d));
trace("Type_e="+typeof(e));

a="LeeFJ";
b=22;
c=true;
d=_root.attachMovie("leaf","f",4);
e={name:"LeeFJ"};
trace("+++++++++++++++++++++++++++++++++");
trace("Type_a="+typeof(a));
trace("Type_b="+typeof(b));
trace("Type_c="+typeof(c));
trace("Type_d="+typeof(d));
trace("Type_e="+typeof(e));输出结果: Type_a=undefined
Type_b=undefined
Type_c=undefined
Type_d=undefined
Type_e=undefined
+++++++++++++++++++++++++++++++++
Type_a=string
Type_b=number
Type_c=boolean
Type_d=movieclip
Type_e=object看起来有但奇怪 var a:String;
var b:Number;
var c:Boolean;
var d:MovieClip;
var e:Object;似乎只是对变量做了一个声明,并没有确定变量的类型,不对,声明变量以后是确定变量为Undefined类型,只有对变量赋值以后,变量才有了他声明中所对应的数据类型。这个不难联想到AS2中的自动数据类型和严格数据类型

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号