资源描述
第八章 ActionScript脚本语言FlashMX2004网页动画南京理工大学 张微 前一页 下一页 休息2本章主要内容lAction基本语法基本语法l变量与表达式变量与表达式l控制结构控制结构l对象与事件编程对象与事件编程 前一页 下一页 休息3Action基本语法 l点语法(点语法(.)用于指明某个对象或电影剪)用于指明某个对象或电影剪辑的属性和方法。辑的属性和方法。例:例:BallMC.playBallMC实例的实例的play方法方法 sun.earth.submit 电影剪辑电影剪辑 sun 下的电影剪辑下的电影剪辑 earth 中的变量中的变量 submitl斜杠语法(斜杠语法(/):与点语法功能一致,早):与点语法功能一致,早期版本使用。期版本使用。l实例:呼拉圈女孩实例:呼拉圈女孩ActionScript基础语法 前一页 下一页 休息4Action基本语法 l点语法中与电影剪辑有关的特殊名称点语法中与电影剪辑有关的特殊名称_root:指主时间轴。:指主时间轴。b关键帧上的电影剪辑实例可用关键帧上的电影剪辑实例可用_root.实例名表示实例名表示例:例:_root.sunthis:本电影剪辑:本电影剪辑_parent:指当前电影剪辑的上级电影剪辑指当前电影剪辑的上级电影剪辑b例:例:电影剪辑电影剪辑sun 中嵌套电影剪辑中嵌套电影剪辑earth,earth再嵌套电影再嵌套电影剪辑剪辑moon,当前选中,当前选中earth则:则:this.earth代表本电影剪辑代表本电影剪辑this.parent 代表电影剪辑代表电影剪辑sun(相对路程)(相对路程)_root.sum.earth.moon代表电影剪辑代表电影剪辑moon(绝对路径)(绝对路径)实例:电影的层次实例:电影的层次ActionScript基础语法 前一页 下一页 休息5Action基本语法 l注释:注释:句首加句首加“/”,本行全为注释,本行全为注释“/*”至至“*/”间全为注释,不管多少行间全为注释,不管多少行注释文字以灰色显示注释文字以灰色显示l其他基础规则其他基础规则语句用分号结束,亦可省略。语句用分号结束,亦可省略。关键字区分大小写,其它不分。关键字区分大小写,其它不分。关键字关键字:与一般语言相同与一般语言相同系统常数:一般为大写字母,通常是键盘系统常数:一般为大写字母,通常是键盘英文名。英文名。ActionScript脚本语言 前一页 下一页 休息6变量与表达式l字符串型(字符串型(String)字符串型用字符串型用 作定界符作定界符字符串型可做运算,意思是连接字符串字符串型可做运算,意思是连接字符串转义字符有效转义字符有效l数值型(数值型(Number)数值型为双精度浮点数数值型为双精度浮点数可使用八进制(前加可使用八进制(前加0)和十六进制(前加)和十六进制(前加0 x)l逻辑型(逻辑型(Boolean)True 或或 1 为为“真真”,Flase 或或 0 为为“假假”l未定义未定义undefined:变量目前无值或已出变量作用域:变量目前无值或已出变量作用域数据类型 前一页 下一页 休息7变量与表达式l对象对象影片剪辑:有自己的属性及值影片剪辑:有自己的属性及值b例:例:myClip.alpha 为名为为名为myClip的影片剪辑实例的的影片剪辑实例的Alpha属性,其值为属性,其值为100时为不透明时为不透明内建对象:系统事先定义对象,用于访问和处理内建对象:系统事先定义对象,用于访问和处理特定种类信息特定种类信息b例:例:Math数学对象,其方法相当于数学函数数学对象,其方法相当于数学函数date日期对象,求当前日期日期对象,求当前日期自定义对象:用户自己创建的对象自定义对象:用户自己创建的对象l空值空值null:即没有值,用于调试变量时表示变量没有:即没有值,用于调试变量时表示变量没有值或函数没有返回值,及用于省略函数参数值或函数没有返回值,及用于省略函数参数数据类型 前一页 下一页 休息8变量与表达式l算术运算符:算术运算符:、/、%、l字符运算符字符运算符:连接字符串:连接字符串l关系运算符:关系运算符:、或!、或!(全等于)、!(全不等)(全等于)、!(全不等)b除了值两边数据类型也相同时全等结果才为除了值两边数据类型也相同时全等结果才为truel逻辑运算符:逻辑运算符:&、|、!运算符 前一页 下一页 休息9变量与表达式l赋值运算符赋值运算符=、+=、-=、*=、/=、%=、&=、=、|=、=l位运算位运算、|、l优先级:与优先级:与C相似相似括号、算术、字符、关系、逻辑、赋值括号、算术、字符、关系、逻辑、赋值运算符 前一页 下一页 休息10变量与表达式l变量类型变量类型变量无固定类型,由所赋值决定类型变量无固定类型,由所赋值决定类型变量值可以是数值、字符串、逻辑值或表变量值可以是数值、字符串、逻辑值或表达式达式l变量定义变量定义变量名遵守标识符规则,且可以使用中文变量名遵守标识符规则,且可以使用中文变量可以不预先定义,直接使用变量可以不预先定义,直接使用b例:例:x=10 x为数值型变量为数值型变量 y=name y为字符型变量为字符型变量定义格式:定义格式:var 变量名变量名=初值初值变量 前一页 下一页 休息11变量与表达式l变量的作用域:变量的作用域:局部变量局部变量b局部变量是本段程序有效的变量局部变量是本段程序有效的变量b用用var定义的变量为局部变量定义的变量为局部变量全局变量全局变量b全局变量是全动画有效的变量全局变量是全动画有效的变量b直接定义的变量是全局变量直接定义的变量是全局变量M注意:此时如再次用注意:此时如再次用var定义,则定义失效定义,则定义失效实例:变量的值实例:变量的值变量 前一页 下一页 休息12变量与表达式l变量同名处理变量同名处理同脚本局部变量不可同名同脚本局部变量不可同名不同场景、符号或图层可使用同名全局变量不同场景、符号或图层可使用同名全局变量同名变量引用时前面必须加动画名或符号名同名变量引用时前面必须加动画名或符号名l实例:实例:同名变量同名变量变量 前一页 下一页 休息13变量与表达式l查看当前类型函数查看当前类型函数格式格式 typeof(变量名变量名 )l类型转换函数类型转换函数parseInt(变量名变量名)字符串转换成整数字符串转换成整数parseFloat(变量名变量名)字符串转换成实数字符串转换成实数eval(表达式表达式)表达式字符串转换成数值表达式字符串转换成数值说明:说明:b无法转换时显示无法转换时显示NaN类型转换 前一页 下一页 休息14变量与表达式l语法:语法:trace(变量名变量名)l测试结果测试结果b菜单:菜单:“控制控制”“测试影片测试影片”b查看:输出窗口中自动显示变量值查看:输出窗口中自动显示变量值l实例:实例:变量类型变量类型trace语句 前一页 下一页 休息15控制结构赋值语句l赋值语句用于动画播放中给变量赋值赋值语句用于动画播放中给变量赋值l如果变量不存在,先产生一个,再赋值如果变量不存在,先产生一个,再赋值l添加赋值语句方法:添加赋值语句方法:set语句:语句:b语法:语法:set(名称名称,值值)b参数:名称:变量或对象名,值:变量值参数:名称:变量或对象名,值:变量值b面板:面板:“语句语句”“变量变量”“set variable”实例:实例:set(x,10)set(c+i,x)M注意:第一个参数的变量或对象名需用双引注意:第一个参数的变量或对象名需用双引号作定界符号作定界符 前一页 下一页 休息16控制结构直接赋值直接赋值b例:例:x=10 M注意:注意:b两种形式性质相同,一般可替换:两种形式性质相同,一般可替换:l观察变量赋值情况观察变量赋值情况“控制控制”“测试场景测试场景”“调试调试”“参数列表参数列表”从从output窗口中窗口中查看变量值查看变量值赋值语句 前一页 下一页 休息17控制结构分支语句lAction也有也有if语句用于选择结构语句用于选择结构l二分支:二分支:if(条件条件)语句语句1else 语句语句2 条件表达式与条件表达式与C语言相似语言相似例:例:if(password=abc123)gotoAndPlay(10);else gotoAndStop(5);实例:实例:if的使用的使用 前一页 下一页 休息18控制结构分支语句l多分支多分支if (条件条件1)语句语句1else if (条件条件2)语句语句2 else if (条件条件n)语句语句nelse 语句语句 n+1 前一页 下一页 休息19控制结构l多分支多分支switch(表达式表达式)case 1:语句语句1;break;case常量常量1:语句语句;break;case常量常量2:语句语句;break;case常量常量3:语句语句;break;.default:语句语句;break;分支语句 前一页 下一页 休息20控制结构循环语句l当型循环条件为真时执行循环当型循环条件为真时执行循环while(条件条件 )语句语句 l直到型循环直到型循环do 语句语句 while(条件条件 )l注意:循环次数不得大于注意:循环次数不得大于2000020000次次lfor循环循环for(表达式表达式1;表达式表达式2;表达式表达式3)语句语句 前一页 下一页 休息21函数的使用l象其他高级语言一样,象其他高级语言一样,Action亦提供函亦提供函数,作为结构化程序设计的模块数,作为结构化程序设计的模块l分类分类内置函数系统已集成函数内置函数系统已集成函数b方法:属于对象的函数。方法:属于对象的函数。如:如:hide()隐藏对象隐藏对象b顶级(通用)函数:不属于对象的函数。顶级(通用)函数:不属于对象的函数。如:如:getVersion()获得当前获得当前FLASH版本版本 函数 前一页 下一页 休息22函数的使用 函数l常用通用函数常用通用函数eval(variable):获取指定变量的值:获取指定变量的值true:得到:得到“真真”false:得到:得到“假假”Newline:插入新的一行:插入新的一行getTimer:得到系统当前时间:得到系统当前时间getVersion:显示播放时所用:显示播放时所用Flash版本版本random(number):产生:产生0到到 number 1 间的间的随机整数。随机整数。前一页 下一页 休息23函数的使用函数l常用字符串函数常用字符串函数substring(string,index,count):取:取 string 字字符串的子串,从符串的子串,从 index 开始取开始取 count 个字符。个字符。length(string):求字符串长度。:求字符串长度。chr(aa):取:取ASCII码值为码值为 aa 的字符。的字符。ord(bb):取字符:取字符 bb 的的ASCII码。码。l常用函数实例:常用函数实例:定时器定时器 前一页 下一页 休息24函数的使用l自定义函数:自定义函数:包含了其它高级语言中的函数与子程序包含了其它高级语言中的函数与子程序l定义格式:定义格式:function 函数名(形参表)函数名(形参表)函数体函数体l说明:说明:只有帧动作窗口才可编写函数只有帧动作窗口才可编写函数形参允许无参,此时括号可以省略形参允许无参,此时括号可以省略函数有函数有 return 语句时表示有返回值语句时表示有返回值同一窗口可编写多个不同名函数,不同窗口可编同一窗口可编写多个不同名函数,不同窗口可编写同名函数写同名函数自定义函数 前一页 下一页 休息25函数的使用l调用函数:调用函数:函数名(实参表)函数名(实参表)l说明:说明:函数不需要声明函数不需要声明函数是全局的,所以对象动作窗口也可以调用帧函数是全局的,所以对象动作窗口也可以调用帧窗口编写的函数窗口编写的函数形参无类型要求,调用时形参自动承接实参类型,形参无类型要求,调用时形参自动承接实参类型,但形实参个数需一致但形实参个数需一致形实参为变量时是传值调用形实参为变量时是传值调用,形实参为数组时是传形实参为数组时是传址调用址调用自定义函数 前一页 下一页 休息26对象与事件编程 对象与事件概述l对象是对象是ActionScript编程中的重要要素编程中的重要要素l对象用属性来控制外观特征,用方法对象用属性来控制外观特征,用方法(函数函数)控制对象的行为控制对象的行为l对象分类对象分类电影剪辑:电影剪辑:有自己的属性及值有自己的属性及值内建对象:系统事先定义对象,用于访问内建对象:系统事先定义对象,用于访问和处理特定种类信息和处理特定种类信息自定义对象:用户自己创建的对象自定义对象:用户自己创建的对象 前一页 下一页 休息27对象与事件编程 对象与事件概述l事件是用户对对象的动作事件是用户对对象的动作lActionScript 是事件驱动编程,通过事是事件驱动编程,通过事件动态控制动画件动态控制动画l事件分类事件分类鼠标事件鼠标事件(On事件事件)电影剪辑事件电影剪辑事件(OnClipEvent 事件事件)前一页 下一页 休息28对象与事件编程按钮事件l按钮事件(按钮事件(On事件)事件)点击点击(press)鼠标在按钮上按下鼠标在按钮上按下释放释放(release)鼠标在按钮上按下后放开(默认)鼠标在按钮上按下后放开(默认)释放离开释放离开(releaseOutside)鼠标在按钮上按下后在鼠标在按钮上按下后在 按钮外放开按钮外放开指针经过指针经过(rollOver)鼠标移至按钮上鼠标移至按钮上指针离开指针离开(rollOut)鼠标离开按钮鼠标离开按钮拖放经过拖放经过(dragOver)鼠标在按钮上按下并拖离再鼠标在按钮上按下并拖离再 移回按钮移回按钮拖放离开拖放离开(dragOut)鼠标在按钮上按下并拖离按钮鼠标在按钮上按下并拖离按钮按键按键(keyPress)键盘按键(在右框中输入按键名称)键盘按键(在右框中输入按键名称)前一页 下一页 休息29对象与事件编程电影剪辑事件l电影剪辑事件(电影剪辑事件(OnClipEvent事件)事件)加载加载(Load)载入电影剪辑载入电影剪辑导入帧导入帧(enterFrame)载入电影剪辑播放任载入电影剪辑播放任一帧时触发一帧时触发卸载卸载(unload)卸载电影剪辑时触发卸载电影剪辑时触发鼠标按下鼠标按下(MouseDown)按下鼠标按下鼠标鼠标按下鼠标按下(MouseUp)释放鼠标释放鼠标鼠标移动鼠标移动(MouseMove)鼠标拖动鼠标拖动向下键向下键(keyDown)按下键盘任意键按下键盘任意键向上键向上键(keyUp)放开键盘任意键放开键盘任意键数据数据(Data)载入变量或影片时触发载入变量或影片时触发 前一页 下一页 休息30对象的属性 l电影剪辑实例的属性电影剪辑实例的属性:电影剪辑属性_ x对象的对象的X轴坐标轴坐标_ y对象的对象的Y轴坐标轴坐标_xmouse:鼠标的:鼠标的x坐标坐标_ymouse:鼠标的:鼠标的y坐标坐标_ wide对象的宽度对象的宽度_ height对象的高度对象的高度_ rotation对象旋转角度对象旋转角度_ target对象的目标路径对象的目标路径_ name引用对象的名称引用对象的名称_ xscale对象对象X轴方向缩放比例轴方向缩放比例_ yscale 对象对象Y轴方向缩放比例轴方向缩放比例_ currentframes当前帧位置当前帧位置_ totalframes时间线上全部帧数时间线上全部帧数_ framesloaded载入进度(返回载入进度(返回百分比值)百分比值)_ alpha对象透明度对象透明度_ visible对象是否可见对象是否可见_ droptarget是否具有播放属性是否具有播放属性_ url对象的对象的URL地址地址 前一页 下一页 休息31对象的属性 l通过通过电影剪辑电影剪辑实例直接使用实例直接使用格式:格式:电影剪辑对象名电影剪辑对象名.属性名属性名例:例:fly._alpha=50 /fly是实例名是实例名注意:如果动作脚本与实例不在同一时间轴,必注意:如果动作脚本与实例不在同一时间轴,必须在实例名前加上路径须在实例名前加上路径例:例:_root.fly._alpha=mc /设置主时间轴中的设置主时间轴中的fly实例的实例的alpha属性属性 _root.mosq.fly._alpha=50 /mosq 是是 fly 的父剪辑的父剪辑实例:实例:b影片剪辑的属性影片剪辑的属性属性控制技巧 前一页 下一页 休息32对象与事件编程l使用属性函数使用属性函数获取属性函数获取属性函数getproperty:b格式:格式:getproperty(target,propety)b说明:说明:target:目标对象名:目标对象名propety:属性名:属性名:属性控制技巧 前一页 下一页 休息33对象与事件编程 属性控制技巧属性设置函数属性设置函数setproperty:b功能:在播放动画时改变电影剪辑实例的属性。功能:在播放动画时改变电影剪辑实例的属性。b语法:语法:setproperty(目标目标,属性属性,值值)b参数:参数:属性:要改变的属性名称属性:要改变的属性名称目标:要改变属性的实例名目标:要改变属性的实例名值:要设置的属性的值值:要设置的属性的值实例:实例:b用按钮控制动画属性。用按钮控制动画属性。前一页 下一页 休息34对象与事件编程l播放动画时利用播放动画时利用Tell Target命令可以调命令可以调出并控制电影剪辑实例的播放。出并控制电影剪辑实例的播放。l面板分类:面板分类:“否决的否决的”“动作动作”Tell Targetl参数:参数:目标:电影剪辑的名称目标:电影剪辑的名称l实例一:实例一:随机算命随机算命l实例二:音乐开关实例二:音乐开关设置目标电影剪辑 前一页 下一页 休息35对象与事件编程 l复制电影剪辑:复制电影剪辑:duplicateMovieClip(Target,New Name,Depth)Target.duplicateMovieClip(New Name,Depth)l参数:参数:Target:被复制电影剪辑实例的名字:被复制电影剪辑实例的名字New Name:复制好的新电影剪辑的名字:复制好的新电影剪辑的名字Depth:新电影剪辑的层次:新电影剪辑的层次M说明:动画对象重叠时根据层次决定叠放次序,说明:动画对象重叠时根据层次决定叠放次序,0层层为最底层,同一层的新对象将替换旧对象。为最底层,同一层的新对象将替换旧对象。复制与删除电影剪辑 前一页 下一页 休息36对象与事件编程 l删除复制电影剪辑删除复制电影剪辑removeMovieClip(Target)l参数:参数:Target:被删除电影剪辑实例的名字:被删除电影剪辑实例的名字M注意:注意:M原始电影剪辑不会被本命令删除。原始电影剪辑不会被本命令删除。M动态产生的电影剪辑不能直接操作属性,需要使用动态产生的电影剪辑不能直接操作属性,需要使用setproperty 和和 getproperty函数函数l实例实例复制影片剪辑复制影片剪辑雪花飘舞雪花飘舞复制与删除电影剪辑 前一页 下一页 休息37对象与事件编程 l电影剪辑有关函数电影剪辑有关函数hitTest(target,x,y):检查是否有电影剪:检查是否有电影剪辑与当前剪辑交叉辑与当前剪辑交叉TargetPath(MovieClip):返回指定电影剪:返回指定电影剪辑目标路径辑目标路径电影剪辑对象 前一页 下一页 休息38内建对象 内建对象的使用l内建对象是内建对象是FLASH事先定义的对象事先定义的对象l常用对象:常用对象:Array:数组对象:数组对象math:数学对象:数学对象date:日期时间对象:日期时间对象sound:声音对象:声音对象Funtion:函数对象:函数对象MovieClip:电影剪辑对象:电影剪辑对象Key:键盘对象:键盘对象Mouse:鼠标对象:鼠标对象Button:按钮对象:按钮对象TextField:文本对象:文本对象String:字符串对象:字符串对象 前一页 下一页 休息39内建对象 内建对象的使用l内建对象的使用内建对象的使用顶级对象直接使用顶级对象直接使用例:例:x=math.sqrt(y)+5;bMath,Mouse,Key 等为顶级对象等为顶级对象一般对象先创建对象实例,再引用对象方法一般对象先创建对象实例,再引用对象方法b创建格式:创建格式:实例对象名实例对象名 new 内建对象名内建对象名()b例:例:CDate=new Date()b引用方法引用方法实例对象名实例对象名.方法名方法名b例:例:x=CDate.getYear()l实例:实例:Math对象的使用对象的使用显示当前日期时间显示当前日期时间 前一页 下一页 休息40数组 l和一般高级语言一样和一般高级语言一样ActionScript提供提供数组来成批处理相同属性数据数组来成批处理相同属性数据l数组是内置对象数组是内置对象ARRAYl特点:特点:数组不要求所有元素类型一致数组不要求所有元素类型一致数组元素下标必须为整数,可以使用变量数组元素下标必须为整数,可以使用变量和表达式和表达式数组分为一维、二维和多维数组数组分为一维、二维和多维数组 前一页 下一页 休息41数组 l定义格式:定义格式:格式一:数组名格式一:数组名=new A(n);b例:例:a=new Array(4);格式二:格式二:数组名数组名=n;b例:例:var a=4;for(var i=0;i=4;i+)a i =i;l说明:说明:n为数组元素最大下标,下标从为数组元素最大下标,下标从0开始开始n 可以省略成为可变大小数组可以省略成为可变大小数组b例:例:b=new Array();new 亦可省略亦可省略b例:例:var x=Array(5);一维数组 前一页 下一页 休息42数组 l初始化:初始化:格式:格式:var 数组名数组名=new A(初值列表初值列表)或或 var 数组名数组名=new A 初值列表初值列表 例:例:var a=new Array(1001,1002,1003,1004);var b=Array Mon,Tue,Wed,Thu,Fri;l将字符串转换为数组将字符串转换为数组格式:格式:字符变量名字符变量名.split(指定分隔字符指定分隔字符)例:例:str=80,90,88,70,95,100;list=new Array();list=str.split(,);list结果为:结果为:80,90,88,70,95,100 一维数组 前一页 下一页 休息43数组 l定义:定义:方法一:直接初始化方法一:直接初始化b例例1:var a=new Array 2,8,4,7,6,5 ;a 为为3行行3列二维数组列二维数组b例例2:var b=Array(2,8,4,7,6,5,1,2,3,4,5,6 );b 为为 232 的三维数组的三维数组方法二:分层定义方法二:分层定义b例例1:定义一个:定义一个5行行4列二维数组列二维数组 var b=new Array(5);for(var i=0;i=5;i+)b i =new Array(4);多维数组 前一页 下一页 休息44数组 l定义:定义:方法三:利用串行合并,即将已定义的一方法三:利用串行合并,即将已定义的一维数组组合成多维数组维数组组合成多维数组b例:例:var a0=Array(1,0,0,0);var a1=Array(0,1,0,0);var a2=Array(0,0,1,0);var a3=Array(0,0,0,1);var tab=a0,a1,a2,a3;tab 为为4行行4列二维数组列二维数组b说明:组成二维数组的一维数组大小可不一说明:组成二维数组的一维数组大小可不一致致多维数组 前一页 下一页 休息45数组 lArray对象有属于自己的一组方法,用于对对象有属于自己的一组方法,用于对数组进行特殊处理:数组进行特殊处理:l使用格式使用格式 数组名数组名.方法名(参数)方法名(参数)l常用方法常用方法concat(数组名数组名):数组连接:数组连接例:设例:设 x1=new Array(a,b,c);x2=new Array(1,2,3);x3=x1.concat(x2);结果结果x3为:为:a,b,c,1,2,3 join():将数组转换为字符串:将数组转换为字符串例:例:x3=x1.join();结果结果x3为:为:a,b,c数组方法 前一页 下一页 休息46数组 l常用方法常用方法length():计算数组或字符串长度:计算数组或字符串长度例:例:len=x1.length;结果结果len为:为:3pop():删除最后的元素,并返回删除的元素:删除最后的元素,并返回删除的元素例:例:x3=x1.pop;结果为:结果为:x1:a,b,x3:cshift():删除第一个元素:删除第一个元素例:例:x3=x1.shift;结果为:结果为:x1:b,c,x3:asort():数组排序,无返回值:数组排序,无返回值例:例:x1=Array(3,1,2,4);x1.sort();结果为:结果为:x1:1,2,3,4slice(开始位置,结束位置开始位置,结束位置):取出指定范围元素:取出指定范围元素例:例:x3=x1.slice(2,3);结果结果x3为:为:b,c数组方法 前一页 下一页 休息47数组 l常用方法常用方法push(元素列表元素列表):将列表中元素加到最后:将列表中元素加到最后,并返回数组长度并返回数组长度例:例:x3=x1.push(d,e);结果为:结果为:x1:a,b,c,d,e,x3:5unshift(元素列表元素列表):将列表中元素加到开:将列表中元素加到开头并返回数组长度头并返回数组长度例:例:x3=x1.unshift(d,e);结果为:结果为:x1:d,e,a,b,c,x3:5reverse():反转数组的次序:反转数组的次序例:例:x1=Array(3,1,2,4);x1.reverse();结果为:结果为:x1:4,2,1,3数组方法 前一页 下一页 休息48数组 l实例:由英文查找对应中文实例:由英文查找对应中文var list=(apple,苹果苹果,grape,葡萄葡萄,orange,柳橙柳橙,banana,香蕉香蕉);var cstr=“无此数据无此数据;var c=list.length;for(i=0;i c;i+)if(listi0=name)cstr=listi1;break;数组方法实例
展开阅读全文