15.ActionScript 3.0 基础知识
ActionScript3 基础知识

eg:
var a:Number; //先声明一个没有初始化的Number变量a
var b:Number = 10; //再声明一个值为10 的Number变量b
var c:Number = a+b; //声明变量c、d、e,分别将不同的a和b的数学运算结果赋值给它们
ActionScript3:
基本数据类型是一种特殊的对象,叫做不变对象(immutable object),和其包装类在应用中没有什么分别,连名字也一样。int 就对应着顶层类int,Number 就对应着顶层Number。所以和使用普通对象一样,可以直接调用它的方法(method)。
2.变量
var c:int = 0;
var d:Boolean = true;
trace (c>d); //输出:false。布尔值d 此时被转换成了数值1
注意:如果非数值的运算对象无法转换成数值,那么这个表达式的值始终为false。
var a:int = 0;
var b = ""; //注意,此时不要声明类型,不然编译不会通过
trace(d); //输出:NaN
trace(e); //输出:NaN
trace(f); //输出:0:由于f 是int 型,所以变成了int型的默认值0
trace(h); //输出:0:同理h也是变成了uint型的默认值0
var a:int, b:uint, c:Number;
var d:String, e:Boolean;
var f:Array;
var g:Object;
15.1 ActionScript 3.0介绍[共2页]
![15.1 ActionScript 3.0介绍[共2页]](https://img.taocdn.com/s3/m/8be9c392b307e87100f696a5.png)
ActionScript 3.0基础知识15学习要点·了解面向对象的基本概念·了解添加代码的位置·了解变量和常量·了解函数·了解类和包·了解语句的使用方法15.1 ActionScript 3.0介绍ActionScript脚本语言是Flash的编程语言,用来控制Flash 影片中的对象行为和开发跨平台应用程序。
从Flash 5 开始发布了ActionScript 1.0开始,几乎每个版本升级都会带来ActionScript的升级。
Flash 6增加了几个内置函数,允许通过程序更灵活地控制动画元素。
Flash 7中引入了ActionScript2.0,支持基于类的编程 ,比如继承、接口和严格的数据类型。
Flash 8进一步增加了ActionScript2.0,添加了新的类库以及用于运行时控制位置数据和文件上传的API。
到了Flash 9,ActionScript正式升级为面向对象的编程语言ActionScript3.0。
随着Flash在网络上的迅速普及、设备和平台的多样化,ActionScript 3.0不断升级,ActionScript3.0已经演变成一门强大的编程语言。
我们可以通过Flash、Flash Builder软件开发基于ActionScript 3.0 的网络应用程序、桌面应用程序和适合在iOS和Android系统上运行的移动设备应用程序。
ActionScript 3.0包含ActionScript编程人员所熟悉的许多类和功能,在架构和概念上是区别于早期的ActionScript版本的。
ActionScript 3.0中的改进部分包括新增的核心语言功能,以及能够更好地控制低级对象的改进Flash Player API。
1.核心语言功能核心语言定义编程语言的基本构造块,例如语句、表达式、条件、循环和类型。
ActionScript 3.0包含许多加速开发过程的新功能。
ActionScript3第一课

第一课脚本基础和事件处理基础知识ActionScript3.0语言的特点:1、更详细的报错信息在书写代码过程中,ActionScript3.0会严格检查己声明的变量、参数、函数返回值的数据类型。
能够大大提高报告运行异常报错的信息量和准确度。
2、更合理的语法ActionScript3.0统一了语法格式(如一些属性去掉了开头的下划线)。
相似的语法也统一了写法(如加载外部文件或导航到URL时均会用到URLRquest)。
3、全新的显示结构以前令人头疼的深度问题被全新的显示列表彻底解决,在处理显示对象的顺序时更加灵活和方便,显示对象间以继承关系存在。
4、全新的事件机制所有事件均被纳入事件侦听器中,侦听器在侦听到某一特定事件发生时作出反应(运行预定义的侦听函数)。
新的事件模型非常大,允许鼠标、键盘事件在显示列表的多个对象间传递。
5、文本处理的进化ActionScript3.0提供了更多处理文本的方法。
例如:可以取得区域中特定某一行的文本,或是某行中字母的个数,或者取得某点下的字母。
强大的文本处理能力使得文本的交互性大幅度加强。
6、更多处理声音的方式在ActionScript3.0中,不同声音可以单独控制,也可以放在一起处理。
声音被纳入不同的声道(Channel)中,可以通过SoundChannel 对象进行控制。
同时ActionScript3.0也提供了全局的SoundMixer对象,用于控制所有的声音。
7、访问原始数据的全新方法ActionScript3.0可以在运行中访问原始的二进制数据,在下载、播放声音或是处理位图信息时,能够同时访问不同数据。
8、强化面向对象编程ActionScript3.0引入了密封类和命名空间的概念。
密封类只能拥有在编译时定义的固定的一组属性和方法,不能添加其他属性和方法,这使得编译时的检查更为严格,从而使程序更可靠。
ActionScript3.0的代码位置1、将代码存储在Flash时间轴的帧中在Flash创作环境中,可以向时间轴中的任何帧添加ActionScript 代码。
1.ActionScript基础

大小写字母
Action中的关键字与函数名是严格区分大小写的,其它则 大小写等价。书写正确的关键字与函数名则以蓝色高亮显 示。
Var i=1; gotoandstop(); var i=1; gotoAndStop();
下面的语句是等价的:
name=1; 与 NAME=1;
Html=true; 与 html=true;
1.动作面板的认识与操作
工具栏
查找与替换 | 插入目标路径 | 语法检查 自动套用格式 | 代码显示 脚本助手: 普通模式 | 专家模式
查看帮助
点击“脚本助手”右边的“?” 或 右击脚本指令查看帮助
首选参数
更改脚本字体,字号,颜色
2. ActionScript基本术语
3.事件处理函数各部分解释
event: 参数名 MouseEvent: 参数类型为鼠标事件 function: 函数标识符 void: 函数没有返回值,空。 function() { 函数体部分 }
跳转语句goto
同一场景中的跳转
gotoAndPlay(5); gotoAndStop(“aa”); // aa为帧标签名
不同场景中的跳转
两个参数,第1个参数为跳转到帧的位置,可用帧序号或帧 标签,第二个参数为场景名,帧标签与场景名要用半角双号 号括起。 gotoAndPlay(1,”场景名”); gotoAndStop(“aa”,”场景名”);
前进 / 后退帧
PrevFrame() 跳转并停止到上一帧. NextFrame()
instance_name_here.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);
ActionScript3.0基础知识

var mybox:classBox=new classBox(); //错误:classBox是
trace(str) //输出: World
2.局部变量的声明
function fun(){
var str:String="World";
trace(str); //输出: World
for each(var i in array){
trace(i);
}
//输出
//one
包内可以创建多个类,请看下面的例子:
Package com{
class classTestClass{}
class classTestClass1{}
class classTestClass2{}
}
导入类包的方法是使用关键字Import,请看下面的例子:
1.全局变量的声明
var str:String="World";
function fun(){
trace(str); //输出: World
}
fun()
(2)actionscript3.0
var i:String; //声明
i="helloWorld!"; //赋初始值
2.声明并赋初始值
var i:String="helloworld";
循环输出对象中的属性值(不包括方法),数组中的元素。
对象循环
var object:Object={x:20;y:30};
actionscript语法基础

创建和使用复合数组
• 使用数组构造器创建复合数组 • 使用Object构造器创造复合数组
运算符
• • • • 算数运算符 字符串运算符 比较运算符和逻辑运算符 位运算符
其他运算符
• 三元运算符 • Typeof运算符
流程控制
• • • • • • • • • If Switch while Do……while For For……in For each …… in Break Continue
传值和传址
• 简单类型传值 • 复杂类型传址
创建和使用OBJECT
• 在actionscript中创建一个Object有多中方法。下面的 例子使用两种不同的方法创建了简单的Object。 Var persion:Object=new Object(); Person.sex=“mail”; Person.age=28 Person.birthday=new Date(1970,0,1);
Var person:Object=(sex:”male”,age:28,birthday: New Date(1970,0,1))
创建和使用数组
• var names:Array = new Array("John", "Jane", "David"); • trace(names.length); // output: 3 • trace(names[0]); // output: John • trace(names[1]); // output: Jane • trace(names[2]); // output: David • var names:Array = ["John", "Jane", "David"]
ActionScript3.0 编程基础_数据类型及其运算、程序流程
ActionScript3.0 编程基础_数据类型及其运算、程序流程关键字: flex7.3 数据类型和数据运算7.3.1 关于数据类型一个变量或者常量被声明时,必须指定其数据类型:原生数据类型:语言本身提供:字符串、整数、布尔型等复杂数据类型:由基本数据类型组成的复合型类型:类、接口等。
基本数据类型:∙Boolean:布尔型,true 和 false∙int:整数,存放32位二进制整数,范围:-2147483648~2147483647,当超出自动转为Number∙Null:空值,是字符串和所有类的默认值。
∙Number:整数型和浮点型,使用64位双精度格式存放数据,没有小数点时自动转换成整数。
最小值和最大值分别存放在Number 对象的MIN_VALUE 和 MAX_VALUE属性中。
∙String:字符串,以Unicode 编码格式存放。
∙uint:正整数类型,0~4294967295∙void:值为undefined,只能用作函数的返回类型。
1、Boolean:布尔型,它可以使用true或false(用于进行逻辑运算)两个值中一个值。
2、int:表示为 32 位带符号整数的数据类型。
int 类表示的值的范围是:-2,147,483,648 (-2^31) 到 2,147,483,647 (2^31-1)。
3、uint:表示 32 位无符号整数的数据类型的方法。
4、String:表示一串字符的数据类型。
5、Number:表示 IEEE-754 双精度浮点数的数据类型。
6、.Date:表示日期和时间信息。
复杂数据类型:Object 对象、 Array 数组、 Date 日期、Error 错误对象、Function 函数、 RegExp 正则表达式、XML XML数据对象、XMLList。
其中Object 是所有对象的基类。
以下是各个类型的默认值∙Object、Array :null∙Number:NaN∙int、uint:0∙Boolean:false∙*:不定类型,默认值:undefined。
ActionScript 快速入门
此示例要求计算机创建名为 value1 的变量,此变量仅接受支持 Number 数据。(“Number”是 ActionScript 中定义的特定数据类型。)您还可以立即在变量中存储一个值:
var value2:Number = 17;
Adobe Flash Professional
Adobe Flash Professional
如果您已在 Flash Professional 中使用过元件,就应该已习惯使用对象了。假定您定义了一个影片剪辑元件(例如矩形绘制),并已在舞台上放置了其ห้องสมุดไป่ตู้本。从严格意义上来说,该影片剪辑元件也是 ActionScript 中的一个对象;即 MovieClip 类的一个实例。
在 Flash Professional 中,还有另外一种变量声明方法。在将一个影片剪辑元件、按钮元件或文本字段放置在舞台上时,可以在属性检查器中为它指定一个实例名称。Flash Professional 在后台创建与实例同名的变量。可在 ActionScript 代码中使用该名称表示该舞台项。例如,假设舞台上有一个影片剪辑元件,并为其指定了实例名称 rocketShip。只要您在 ActionScript 代码中使用变量 rocketShip,实际上就是在操作该影片剪辑。
使用对象 :
属性
方法
事件:
基本事件处理,事件处理过程,事件处理示例
创建对象实例
ActionScript 是一种面向对象的编程语言。面向对象的编程只是一种编程方法。组织程序中代码的方法确实只有一种,即使用对象。
术语“计算机程序”早些时候定义为计算机执行的一系列步骤或指令。所以,从概念上讲,您可以认为计算机程序就是一个很长的指令列表。然而,在面向对象的编程中,程序指令分布在不同对象中。代码被编组为功能区块,因此相关的功能类型或相关的各条信息被编组到一个容器中。
ActionScript3.0语言基础2
定义常量名的一个明显的好处就是,如果在 程序中有很多处都使用了同一个常量值,当需要 改变这个值的时候,只修改这个常量的初始值就 可以了。如果使用了字面常量,就只能一个一个 地修改了。 一般约定,自定义的常量名都使用大写字母 表示,以区别于程序中的其他标识符,如变量名。
常见的内建常量: Math.PI——圆周率 true false——逻辑真 逻辑假 null——空对象 NaN——空值 undefined——没有定义
frameRate
12
stage
stageWidth
550
stageHeight
400
舞台是容器的容器,通过这种容器的嵌套,可以保存非常复杂的数据。像这种 含有复杂数据的东西一般称为复杂对象,要访问对象中的变量,需要使用点语 法: 对象名.变量名
对象中的变量在面向对象编程中称为属性。 对象名.属性名 stage.stageWidth; trace(“帧频=”+stage.frameRate); trace(“舞台的宽=”+stage.stageWidth); trace(“舞台的高=”+stage.stageHeight); 注意:所输出的信息数据是【属性】面板中设 置的,只显示不能更改,是只读属性。
1.2.1常量
固定不变的数据,即常量。如:Math.PI代表数学 中的∏,等于3.14。常数Key.Tab的含义始终不变,它代 表键盘上的【Tab】键。 常量是一种属性,是指在程序运行中不会改变的量。
myButton.onPress=function(){ var myNumber:Number=7; var myString=“欢迎使用ActionScript2.0”; for(var i=0;i<myNumber;i++){ trace(i); if(i+3==8){ trace(myString); } } }
ActionScript 3.0从入门到精通1概述
1.3.2 读适合自己的书
现在出版业发达,书籍翻译,出版的速度非常快, 现在出版业发达,书籍翻译,出版的速度非常快,甚至网上 也有大量提供下载的电子图书.这种"知识爆炸" 也有大量提供下载的电子图书.这种"知识爆炸"的现 状令人感叹.面临的选择多了,难免会无从下手. 状令人感叹.面临的选择多了,难免会无从下手.对于 读者来说,最需要的还是应该找到一本适合自己的书. 读者来说,最需要的还是应该找到一本适合自己的书. 在选择教材的时候首先要认识到, 在选择教材的时候首先要认识到,我们需要的是一本教科书 而不是工具书.长篇罗列语句, ,而不是工具书.长篇罗列语句,语法往往难以满足学 习要求. 习要求.一方面这些内容在帮助文档中已经有更为充分 的介绍和说明(从工具书的角度, 的介绍和说明(从工具书的角度,没有比帮助文档更为 方便,及时,全面的), ),另一方面也无法提供给读者编 方便,及时,全面的),另一方面也无法提供给读者编 程的思路. 程的思路.
3.0编程软件的选择 1.2.5 ActionScript 3.0编程软件的选择
考虑到读者的计算机配置各有不同, 考虑到读者的计算机配置各有不同,且较少进行重量级的程 序开发, 序开发,本书的实例多数使用编程和设计界面兼备的 Flash CS3进行示范,同时也以较少的实例示范在 进行示范, 进行示范 同时也以较少的实例示范在Flex Builder 3中编写代码.至于其他第三方软件,读者可在 中编写代码. 中编写代码 至于其他第三方软件, 掌握两款官方软件的基础上尝试使用. 掌握两款官方软件的基础上尝试使用. 需要注意的是, 在编程时会有一些不同之处. 需要注意的是,Flash和Flex在编程时会有一些不同之处. 和 在编程时会有一些不同之处 因为Flash和Flex的编译器(compilers)不同,所以同一 的编译器( 因为 和 的编译器 )不同, 段代码无法保证在Flash和Flex环境下都能够编译成功. 环境下都能够编译成功. 段代码无法保证在 和 环境下都能够编译成功 此外, 可以独立制作库元件和显示对象( 此外,Flash IDE可以独立制作库元件和显示对象(如 可以独立制作库元件和显示对象 MovieClip); );Flex可以使用 可以使用Embed标签而 标签而Flash不支持( 不支持( ); 可以使用 标签而 不支持 应开发者要求,目前最新版的Flash CS4也已经支持 应开发者要求,目前最新版的 也已经支持 Embed标签); 标签); 拥有不同的组件库. 标签);Flash和Flex拥有不同的组件库. 和 拥有不同的组件库
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
15.1.2 ActionScript 编辑器的使用
脚本编辑器也就是“动作”面板,用来编写和管理ActionScript 程序,它可以直接按F9键调出, 也可以使用“窗口→动作”打开。“动作”面板可大致分为3 个区域,分别是“动作工具箱” 、“脚本导航器”和“脚本编写区”
动作工具箱
脚本编写区
脚本导航器
新建ActionScript3.0 类型的Flash 文档,点击属性面板中“类”右侧的编辑 类定义按钮,即可新建一个文档类。
15.4 语法
编程语言的语法是指在编写代码时你必须遵循的一组规则 。这些规则决定了可以使用的符号和语言以及如何构造你 的代码。
ห้องสมุดไป่ตู้
区分大小写
ActionScript 3 是一种区分大小写的语言。
ACTIONSCRIPT 3.0 基础知识
ADOBE FLASH PROFESSIONAL CS6
ACTIONSCRIPT 3.0 基础知识
15.1 ActionScript 3.0 介绉
15.2 面向对象编程 15.3 添加ActionScript 代码的位置 15.4 语法 15.5 变量不常量 15.6 凼数 15.7 类和包 15.8 语句
var sum:Number = 0; for (i=1; i<=100; i++) { sum = sum+i; } trace(sum);
15.8 语句
15.8.3 break 和continue 语句
break 出现在一个循环(for、for…in、do while 或while 循环)中,或者出现在不 switch 动作内 特定case 语句相关联的语句块中。 continue 语句的作用是结束本次循环,接下去执行是否进行循环的条件判断。 continue 语句和break 语句的区别是continue 语句只结束本次循环,而丌是终止整个循环的执 行,而break 语句则是结束整个循环,丌再进行条件判断。
var box:Sprite = new Sprite();
15.6 凼数
AS3 中声明凼数使用funcion 关键字,现在我们声明一个简单(只含正整数)的加法凼数, 它接收两个int 类型的参数,并返回一个int 类型的值。
function Add(a:int, b:int):int {
return a + b;
脚本编写区:它是一个全功能的脚本编辑器,可以通过“常规”和“助手”两种方式写入ActionScript 程序。 ActionScript 编辑器参数设置:
编辑器错误面板辅助排错:
15.2 面向对象编程
1.对象 2. 对象的状态和行为 3. 类 4. 类的结构 5. 消息和方法
15.3 添加ACTIONSCRIPT 代码的位置
15.1.1 不早期版本的兼容性
Flash Player 升级是完全向后兼容性的。在Flash Player 高版本中,可以运行在早期Flash Player 版本中运行的任何内容。Flash Player 提供了两个虚拟机,AVM1 虚拟机运行ActionScript1.0 和 ActionScript2.0 的内容,AVM2 虚拟机与门运行ActionScript3.0 的内容。
15.8.1 条件语句
if 语句是用来判断所给定的条件是否为真,根据判断结果来决定要执行的程序。
if ( 条件) { // 程序 }
15.8 语句
15.8.2 循环语句
ActionScript 语言中可通过4 种语句实现程序的循环,分别是while、do…while、for 循环和for in 循环语句。
var i :Number= 1;// 变量i 用来控制循环 var sum:Number = 0;//sum 表示求和的结果 // 当变量i 的值小于等于100 时, while (i<=100) { sum += i; //sum 丌断加上i i++;//i 递加 }
do{ 程序1; 程序2; … }while( 条件);
分号
分号字符(;)是用于终止一条语句的。
括号
在ActionScript 3 中你可以在三种方式下使用括号 “( )”
代码块
封装于大括号“{ }” 中的一行或者多行代码称为块。
空白
代码中的任何间距—空格、制表符、换行符等等—都称为空白。
文字
文字具有任意固定值,它能够直接在你的代码中显示出来。
关键字和保留字
保留字是指你丌能在你的代码中用作标识符的字,因为这些字是由ActionScript 保留使用的。
15.5 变量不常量
AS3 的变量声明使用var 关键字,例如我们声明一个int 类型的变量并赋初值5:
var length:int = 5;
对于类类型的变量,使用new 关键字初始化,类型的变量又称为对象,或者引 用类型变量。我们声明一个Sprite 类型的变量:
15.1 ACTIONSCRIPT 3.0 介绉
Action Script 脚本语言是Flash 的编程语言,用来控制Flash 影片的 中对象的行业和开发跨平台应用程序。
1.核心语言功能 2.运行时异常 3.运行时类型 4.密封类 5.闭包方法 6.ECMAScript for XML (E4X) 7.正则表达式 8.命名空间 9.新基元类型 10.API 功能 11.DOM3 事件模型 12.显示列表 API 13.处理动态数据和内容 14.低级数据访问 15.使用文本
}
15.7 类和包
包是AS3 中用来组织代码的形式,我们可以把丌同用途的类组织在丌同的包中,包 使用package 关键字声明,包必须不所在目录名相同,根目录下的包没有名字。 package Test{ public class Document { } }
15.8 语句
语句是执行或指定动作的语言元素