Flash5 ActionScript语法详解.docx

上传人:b****7 文档编号:9505922 上传时间:2023-02-05 格式:DOCX 页数:38 大小:34.09KB
下载 相关 举报
Flash5 ActionScript语法详解.docx_第1页
第1页 / 共38页
Flash5 ActionScript语法详解.docx_第2页
第2页 / 共38页
Flash5 ActionScript语法详解.docx_第3页
第3页 / 共38页
Flash5 ActionScript语法详解.docx_第4页
第4页 / 共38页
Flash5 ActionScript语法详解.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

Flash5 ActionScript语法详解.docx

《Flash5 ActionScript语法详解.docx》由会员分享,可在线阅读,更多相关《Flash5 ActionScript语法详解.docx(38页珍藏版)》请在冰豆网上搜索。

Flash5 ActionScript语法详解.docx

Flash5ActionScript语法详解

Flash5 ActionScript语法详解

约定称谓:

variable变量,可为数值、布尔值或字符串。

target目标路径字符串。

mc影片片段实例,可为实例的对象实体或目标路径字符串。

property影片片段属性。

obj_mc对象或影片片段。

member对象的成员或影片片段的属性。

expression表达式,可为变量、对象、影片片段实例或式子。

num数值表达式。

string字符串表达式。

char字符表达式。

func函数。

statement语句。

scene场景,可为常量或表达式。

frame帧,可为常量或表达式。

urlURL链接字符串。

●运算符●

1、算术运算符:

-取负-expression

+加expression1+expression2

-减expression1-expression2

*乘expression1*expression2

/除expression1/expression2

%求余expression1%expression212%5->2

?

:

定向运算符expression1?

expression2:

expression3

当expression1的值为true时取expression2,否则取expression3

2、逻辑运算符:

(注:

括号中为旧版本写法)

!

(not)逻辑非!

expression

&&(and)逻辑与expression1&&expression2

//(or)逻辑或expression1//expression2

!

=(<>不相等expression1!

=expression2

==相等expression1==expression2

<小于expression1

>大于expression1>expression2

<=小于等于expression1<=expression2

>=大于等于expression1>=expression2

说明:

在使用&&(//)时,若表达式expression1已为false(true)值,则不再计算expression2的值,直接返回false(true)。

否则,继续计算expression2的值,再作逻辑与(或)运算。

3、字符串运算符:

(注:

括号中为新版本中的符号表示法)

"",''引号用于表示字符串

add(+)字符串叠加expression1addexpression2"1"add"2"->"12"

eq(==)字符串相等expression1eqexpression2

ne(!

=)字符串不相等expression1neexpression2

lt(<字符串小于expression1ltexpression2"12"lt"2"->true

gt(>字符串大于expression1gtexpression2"12"gt"1"->true

le(<=)字符串小于等于expression1leexpression2

ge(>=)字符串大于等于expression1geexpression2

(说明:

字符串在比较时,按从左到右一个个字符比较ASCII码。

若遇到不同,就返回ASCII码大小比较的结果。

如果直到一个字符串结束时都相等,则若另一个字符串也结束,就表示相等,否则,未结束的字符串较大。

虽然字符串运算符可用相应的符号表示,但在使用上有一定区别。

用字母表示的运算符在处理时先将两个表达式都转化为字符串后再作运算或比较。

而用符号表示的运算符在处理时若有一个表达式为数值,就将另一个表达式转化为数值再作运算或比较。

比如:

19>2的值为true,而19gt2的值为false。

4、位运算符:

~按位取反~expression按位1->0,0->1

&按位与expression1&expression2按位11->1,10->0,01->0,00->0

/按位或expression1/expression2按位11->1,10->1,01->1,00->0

^按位异或expression1^expression2按位11->0,10->1,01->1,00->0

<<按位左移expression<

>>按位算术右移expression>>num右移num位,左补符号位

>>>按位逻辑右移expression>>>num右移num位,左补0

(说明:

按位运算表示将两个表达式的值转化为数值后按二进制的位进行运算。

比如12&34->2,由于12的二进制为01010,34的二进制为10010,所以按位与后为00010即)2。

按位移动时num的取值为0~31

5、赋值运算符:

++自加variable++,++variable相当于variable=variable+1

--自减variable--,--variable相当于variable=variable-1

+=自加赋值variable+=expression等价于varaible=variable+expression

-=自减赋值variable-=expression等价于varaible=variable-expression

*=自乘赋值variable*=expression等价于varaible=variable*expression

/=自除赋值variable/=expression等价于varaible=variable/expression

%=自求余赋值variable%=expression等价于varaible=variable%expression

&=自按位与赋值variable&=expression等价于varaible=variable&expression

/=自按位或赋值variable/=expression等价于varaible=variable/expression

^=自按位异或赋值variable^=expression等价于varaible=variable^expression

<<=自按位左移赋值variable<<=num等价于varaible=variable<

>>=自按位算术右移赋值variable>>=num等价于varaible=variable>>num

>>>=自按位逻辑右移赋值variable>>>=num等价于varaible=variable>>>num

(说明:

自加和自减的两种用法在返回值上有区别。

variable++(--)返回variable未更改前的值,++(--)variable返回variable更改后的值。

6、括号运算符:

()小括号

用法1:

用于重置表达式运算的优先级

如:

(a+3)*4

用法2:

用于包含函数的参数

如:

functionfunc(var1,var2){...}

date=getDate();

[]中括号

用法1:

用于定义及初始化数组

如:

myArray=[]<=>myArray=newArray()

myArray=["red","orange","yellow">

用法2:

用于获取数组中的项

如:

myArray[0]="red"

用法3:

用于获取对象或影片片段的成员

如:

account=myObject["account"><=>account=myObject.account

_root["mc"+1]["_x">=30<=>_root.mc1._x=30

{}大括号

用法1:

用于界定语句段范围(用在复合语句与函数体定义中)

如:

if(a==2){a=3;b=4;...}

functionmyFunc(){...}

用法2:

用于定义及初始化对象

如:

myObj={}<=>myObject=newObject()

person={name:

"Peter",child:

"Amy"}

7、其他运算符:

;分号statement1;statement2用于分隔同一行内的两个语句

逗号expression1,expression2用于在一个语句内分隔两个表达式

.点运算符obj_mc.member用于连接对象(影片片段)和其成员(属性)

typeof获取类型typeof(expression)返回表达式的值的类型(字符串表示)

未定义"undefined"

空值"null"

数值"number"

字符串"string"

对象"object"

函数"function"

影片片段"movieclip"

void未定义值void(expression)返回未定义值

●语法关键字及语句●

1、指令语句:

break跳出最近的循环体(do...while,while...,for...,for(in)...)

continue用在循环体内,表示忽略之后的语句,直接进入下一轮循环

#include"filename"引入一个外部脚本文件:

varvariable定义一个局部变量(只在函数体内有效)

return[expression]跳出函数体(并返回一个值)

newfunc(...)新建一个对象,并用func构造函数进行构造

deletevariable删除一个变量,使其变为未定义

2、判断语句({}内语句数为1时{}可省):

if(expression1){

statement(s)1

}elseif(expression2){

statement(s)2

...

}else{

statement(s)n

}

当expression1为true时执行statement(s)1,当expression2为true执行

statement(s)2......否则执行statement(s)n。

{}内语句数为1时{}可省。

ifFrameLoaded([scene,]frame){

statement(s)

}

当场景scene的帧frame已经载入时,执行statement(s)。

3、循环语句({}内语句数为1时{}可省):

while(expression){

statement(s)

}

当expression的值为true时反复执行statement(s)直到expression的值为false。

do{

statement(s)

}while(expression)

反复执行statement(s)直到expression为false。

{}内语句数为1时{}可省。

for(statement1;expression;statement2){

statements(s)

}

先执行statement1,当expression的值为true时反复执行statement(s),并在执行

完一轮后执行一次statement2,直到expression的值为false。

for(variableinobj_mc){

statements(s)

}

variable依次取obj_mc的各成员名称,反复执行statements(s),直到所有成员都

取过一遍。

4、对象操作语句({}内语句数为1时{}可省):

with(obj_mc){

statement(s)

}

对obj_mc进行操作,凡statement(s)里用到的与obj_mc的成员名相同的变量、函数、影片片段,都指代obj_mc的成员。

tellTarget(mc){

statement(s)

}

对mc进行操作,凡用到的变量、函数、影片片段,只要未指明绝对路径,都指代mc的成员。

5、函数及事件:

functionfunc(variable1,variable2,...){

statement(s)

}

定义一个函数。

函数体内this对象指代调用该函数的对象或影片片段,未用var定义的变量(非形参)从属于该函数所在的影片片段。

func名称省略时该复合语句返回一个类型为"function"的值,用以指代该函数。

on(mouseEvent){

statement(s)

}

只能用在按钮的动作里。

mouseEvent的可取值为:

press鼠标键在按钮上按下

release鼠标键在按钮上松开

releaseOutside鼠标键在按钮区域外松开

rollOver鼠标滑过按钮

rollOut鼠标滑出按钮

dragOver鼠标有键按下时滑过按钮

dragOut鼠标有键按下时滑出按钮

keyPress(key)key键被按下,key为ASCII码字符或Key对象常量

各事件可用逗号分隔,当有一事件成立时就执行statement(s)。

onClipEvent(clipEvent){

statement(s)

}

只能用在影片片段的动作里。

clipEvent的可取值为:

load该影片片段已载入

unload该影片片段被卸载

data用loadVariableNum载入数据后或用loadMovie载入影片的每个影片片段后enterFrame播放至该影片片段所在帧(若停在该帧则反复执行)

mouseMove鼠标移动

mouseDown鼠标键按下

mouseUp鼠标键松开

keyDown键盘键按下

keyUp键盘键松开

各事件可用逗号分隔,当有一事件成立时就执行statement(s)。

●常量及全局函数●

(注:

函数名前加=号的表示该函数有返回值。

1、常量:

true逻辑真。

false逻辑假。

null空值,可与未定义值相等(但类型不同)。

如variable未定义时,

variable==null为true。

NaN表示NotaNumber,即非数值量。

用于表征数值计算时发生的非数值型错误。

如:

1*'a'就得NaN。

newline表示换行符,即'n'。

Infinity表示无穷大数值。

如:

-1/0得-Infinity。

2、数值运算函数:

=Number(expression)

将expression转化成数值,expression为false、null或未定义时返回0,

为true时返回1,无法转化时返回NaN。

如:

Number("12e2")返回1200。

=Boolean(expression)

将expression转化成布尔值。

expression的值为false、null、"false"或为字符串且Number(expression)为NaN或0则返回false,否则返回true。

=int(expression)

将expression转化成数值后取整。

如:

int("-1.2")返回-1。

=random(num)

随机返回0到num-1(num必须正整数)的某一个整数。

=isFinite(expression)

判断expression转化成数值后是否为有限量。

比如isFinite(1/0)返回false。

=isNaN(expression)

判断expression是否为非数值量。

=parseInt(expression,radix_num)

把expression先转化为字符串后再按radix_num进制理解转化为整数。

比如:

parseInt(12,16)返回18。

=parseFloat(string)

把字符串转化为浮点数。

如:

parseFloat("1.2e-2")返回0.012。

3、字符串运算函数:

=String(expression)

将expression转为字符串。

expression的值可为布尔值、数值、一般对象(返回"[object][object]")、数组对象(返回各项的值列表)、影片片

段(返回绝对路径)。

=chr(num)

返回ASCII码值为num的对应字符。

=ord(char)

返回字符char所对应的ASCII码值(8-bit)。

=length(string)

返回string长度(即字符个数)。

=substring(string,start_num,length_num)

返回string中第start_num(需>=0,否则取0)个字符开始,长度为length_num(需>=0,否则忽略)的子串。

若length省略或过界,则返回

start_num之后的整个子串。

=mbchr(num)

返回ASCII码值为num的对应双字节字符。

=mbord(char)

返回双字节字符char所对应的ASCII码值(16-bit)。

=mblength(string)

返回string的双字节长度。

=mbsubstring(string,start_num,length_num)

返回string中第start_num个字符开始,长度为length_num的子串。

=escape(string)

将一般字符串译成URL编码格式的字符串。

如escape("1&2")返回"1%262"。

=unescape(string)

将URL格式的字符串解码成一般字符串。

如unexcape("%D7%D4%D4%DA")返回"自在"。

注:

字符串按双字节字符处理时,双字节字符(如中文字符)代表一个整体。

比如字符串"I'm自在幻想",用在length函数时返回12,而用在mblength函数时返回8。

4、其他函数:

=getProperty(mc,property)

返回影片片段mc的property属性值。

=targetPath(mc)

返回影片片段mc的绝对路径字符串。

如主场景下的一个影片片段名为mc1,则targetPath(_root.mc1)返回"_level0.mc1"。

=eval(target)

返回目标路径字符串target所指代的变量、对象或影片片段实例。

如上例中eval("_root.mc1")返回影片片段mc1实体。

=getTimer()

返回影片从开始播放到当前的时间间隔(毫秒单位)。

=getVersion()

返回系统平台及FlashPlayer的版本。

如返回"WIN5,0,30,0"表示当前系统为Windows,FlashPlayer的版本为5.0r30。

●影片及影片片段属性●

1、影片片段可改属性:

_x中心点所在相对X坐标(象素单位)

_y中心点所在相对Y坐标(象素单位)

_xscale横向缩放比例,初始为100

_yscale纵向缩放比例,初始为100

_rotation相对旋转角度(度单位)

_width相对显示宽度(象素单位)

_height相对显示高度(象素单位)

_alpha显示透明度(0~100)

_visible是否可见

_focusrect是否显示焦点框

_name实例名称

2、影片片段只读属性:

_totalframes总帧数

_framesloaded已载入的帧数

_currentframe当前所在帧

_target绝对目标路径字符串

_url来源URL地址字符串

_droptarget拖拽该影片片段的释放点所在的绝对目标路径字符串

_xmouse鼠标对该影片片段的相对X坐标

_ymouse鼠标对该影片片段的相对Y坐标

3、影片属性:

_quality显示品质(取值:

"LOW","MEDIUM","HIGH","BEST")

_highquality显示高品质(取值:

0表示low,1表示high,2表示best)

_soundbuftime流式声音的缓冲时间(秒单位)

●动作指令函数●

1、影片片段操控动作(与影片片段对象的同名方法等价):

play()

开始播放当前影片片段(从当前帧开始)。

stop()

停止播放当前影片片段。

prevFrame()

跳至并停止在前一祯。

nextFrame()

跳至并停止在下一祯。

prevScene()

跳至并停止在前一场景的第1帧。

nextScene()

跳至并停止在下一场景的第1帧。

gotoAndPlay([scene,]frame)

跳至scene场景(省略表示当前场景)的frame帧并播放。

gotoAndStop([scene,]frame)

跳至scene场景(省略表示当前场景)的frame帧并停止。

stopDrag()

停止当前的拖拽动作。

2、影片片段相关动作:

duplicateMovieClip(mc,name_string,depth_num)

动态复制影片片段mc,副本取名为name_string,显示层次为depth_num,副本与源本在同一路径下,且从第1帧开始播放,源本的状态也被复制。

显示层次指的是在该路径下各影片片段的显示上下关系,同一层只能有一个影片片段,否则已有者将被删除,以让位给新定义者。

removeMovieClip(mc)

删除动态创建(用duplicationMovieClip、attachMovie)的影片片段mc。

setProperty(mc,property,expression)

设置影片片段mc的property属性为expression的值。

startDrag(mc,[lockcenter,[x1,y1,x2,y2]])

开始拖拽mc(一个时刻只能有一个影片片段被拖拽)。

lockcenter指定是否把mc的中心点对准鼠标热点(默认为false),x1,y1,x2,y2指定mc所能移动的范围(默认为整个显示区)。

updateAfterEvent(clipEvent)

只能用在影片片段的动作里,使得一处理完clipE

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1