>>=自按位算术右移赋值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