flash播放器:Flash as入门(3):AS基本语法

  在第课中我们己经介绍过,ActionScript是部语言,即然是语言它就有它自己语法

  、ActionScript语句是区分大小写:在ActionScript中英语字母大小写具有区别意义.我们来看个例子:打开时间轴第动作面板,输入:

  Name="Sanbos";

  name="假博士";

  trace(Name);

  测试影片,输出窗口将出现Sanbos,ActionScript区分开了Name和name.现在将代码改为:

  Name="Sanbos";

  Name="假博士";

  trace(name);

  测试影片,输出窗口将出现:und,没有输出内容

   2、ActionScript语句以分号作为每句结束符号以上面代码为例,把它写成行:

  Name="Sanbos";name="假博士";

  trace(Name);

  这时ActionScript将这行看成 3句指令,每句中间用分号分开.测试影片,输出窗口将出现Sanbos.那么将 3句指令中间分号去掉,那么,输出窗口会出现语法提示.所以我们应该养成,每个语句结束时,输入个分号习惯

   3、有关点语法

  在ActionScript中,应使用点(.)来访问对象属性和思路方法.比如在舞台上有个叫mymc_mc影片剪辑元件,我们要访问它属性和思路方法,就需要使用点,比如:

  mymc_mc._x

  在对象名称后面输入个".",然后输入其属性和思路方法名称.

  点个作用是相当于路径,就相当于文件系统如:c:/windows/…中"/".比如我们个动画,主时间轴或者说舞台,在ActionScript2.O中被写为_root,舞台上有影片剪辑元件my_mc,如果要写my_mc_x属性,就应该这样写:

  _root.my_mc._x

  你可能会说,我常看到只写了my_mc._x,没有_root.这种情况在主时间轴帧动作上,本来就在_root上,就可以省略.如果在舞台上加个按钮用来设置舞台上mc_x属性,用_root.对象层次更清楚如果代码是写在mc内部就要加上_root或_parent了如在按钮上就要这样写:

on(release){
_root.my_mc._x=200;
}
又比如,做个mc动画,在mc帧写上stop;放在舞台上,然后在舞台上放按钮来控制mc播放,那么在按钮上就应该这样写:

on(release){
_root.my_mc.play;
}


   4.注释

  ActionScript中注释用来解释和介绍说明语句作用.而注释本身是不被执行.注释有两种,种是单行注释,种是多行注释.单行注释是以//开始到本行未尾.如:

  trace("单行注释");//这是单行注释丨

  测试影片时从双斜杠开始以后都不会执行.

  另种注释方式是多行注释,它是以/*开头,以*/结束.如:

  /*这是多行注释

  在这个注释范围内语句

  都不会被执行*/

  trace("多行注释");

  数据类型:计算机执行时处理数据,和我们数学中数字是区别.数字只是数据种,在ActionScript中有很多种区别类型数据,下面介绍下几种主要数据类型.

  Number:数字数据类型

  u:正整数

  :整数

  String:或者叫文本,String数据类型常常用引号括起来,如:

  My="abc"

  Boolean:布尔值,它只有两个值:true、false,分别是真和假意思.也就是"是"和"不是"意思

  Object:可以里解为对象

  数据类型转换:虽然数据有区别类型,但各种类型的间是可以转换.就象现在流行变性手术样,做了 2十年男人,突然想做女人了,做个变性手术就行了.在ActionScript中就简单多了,下面来看看怎样转换

  将数据转换为数值类型:

  数值类型有 3种,用下面 3个可以将真它数据类型转换为数值:

Number

u


  对于不能被转换为数值数据如英文字母,汉字等,,u则返回0,而Number则返回NaN.

  练习:在帧动作面板中输入:

a="123";
b="abc";
c=(a);
d=(b);
e=Number(b);
trace("c="+c+line+"d="+d+line+"e="+e);
测试影片,在输出窗口会出现:

c= 123
d=
0
e=NaN
来看看这几句代码:

  a="123";这个"123"是用引号括起来,那么它就是(String),它不是个数值,而是由 3个组成串,它被读为: 2 3.

  b="abc"更不用说是串了.

  c=(a);将a从串转换为数值了,那么c就为123,被读为:百 2十 3.

  d=(b);很显然abc是不能被转换为数值,当不能被转换为数值时,返回0,所以d为0.

  e=Number(b);当不能被转换为数值时,Number返回NaN,所以e为NaN.

  如果要将布尔值转换为数值,那么ture将被转换成1,false则被转换为0.

  如:

a=ture;
b=false;
c=(ture);//c为1
d=(false);//d为0


  另外和u类型都是整数,如果被转换数据为小数点,那么它们会只返回整数部分,如:

a="3.5";
b=(a);//b为3
c=Number(a)//c为3.5


  这时我们立即就会想到可以用,u来取整,是可以,不过需要注意是它们是将小数点及后面省略,而不是 4舍 5入

  将数据转换为串:

  用String可以将数据转换为串.如:

a=5;
b =8;
c =String(b);//c为"8"
d=a+c;
trace(d);
测试影片输出为58(读作: 5 8),这是c是,不能进行数学计算,只能是两个连接.如果将d=a+c;改为:d=a+b;测试时就输出13.

  将数据转换为布尔值:

  只介绍种情况,将数值转换为布尔值.如果数值为0,则被转换为false,否则转换为true.仅管有Boolean来转换,但我们应该不会用它,但这并不意味着我们不会用到这种转换,来看个例子:

  My_mc._visible=0;

  这句让元件不可见代码,我们经常用到,mc_visible属性是是否可见意思.设置这个属性只能用布尔值,即true(是)和false(不是).但上句我们确用0,那么在执行这句代码时,ActionScript会将0转换为false,然再执行.所以上句代码实际执行是:

  my_mc._visiblc=false;

  这里可以看出,如果我们直接写成: my_mc._visiblc=false;

  计算机执行速度要快些,它不需要转换,当然你说,我写0要快些,那就随你高兴罗.

  数据被存放在计算机内存的中,内存被分成很多个小房间,每个房间里存放个或多个数据,为了便于使用这些数据,我们给这些房间取上个名字,这就是我们要介绍个重要概念:

  变量:变量用来存放数据,它是小块内存代号,如上所说,它就是内存中存放数据小房间名称,要创建个变量,它语法是:

  var 变量名称:数据类型

  比如:

  var a:Number

  这就声明了个变量a,它数据类型是数值.运行下面代码:

var a:Number;
a= 10;
trace(a);
输出面板将显示10.

var a:Number;
a= b;
trace(a);


  输出面板将显示:und,这是不知道类型.声明变量a是数值类型,而给它赋值却是b,b不是数值,所以输出结果就只好说:不知道你在说什么?

  上面a=10中"="号是赋值,即将10放到变量a中.在声明变量同时就可以给它赋值,如:

  var a:Number=10;



  你可能要说,前面你如何就写:

  a=10;

  是,在ActionScript2.0中我们还可以直接写:a=10,它实际上就是:var a=10,但这是最后晚餐了,在ActionScript3.0中就必须写var了.

  上面介绍过,变量就象是内存中个房间,里面存放着数据.那个这个房间就是间制.比如原来a房间中住着10,现在将15放进去,15进去后,脚就将10踢出去了.运行下面代码看看:

var a:Number;
a=10;
a=15;
trace(a);


  结果显示为:15



Tags:  flashplayer flash播放器

延伸阅读

最新评论

发表评论