当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash 动作脚本之:资料速查(19)

Flash动画制作
Flash AS 3.0实例教程:用Tween类制作缓动动画
Flash AS2实例教程:制作镭射闪光字动画效果
Flash AS2基础教程:一步绘制线条
Flash cs3仿真艺术设计4.4:模糊滤镜的应用
Flash cs3仿真艺术设计4.5:模糊运动制作飞行文字
Flash cs3仿真艺术设计4.6:组合效果应用实例
Flash cs3仿真艺术设计4.7:模糊滤镜的应用
Flash AS 3.0基础教程:物理基础之重力
Flash AS3.0菜鸟学飞教程:创建自定义类
Flash cs3仿真艺术设计4.8:选择模糊的应用
Flash cs3仿真艺术设计4.9:背景模糊应用技巧
Flash AS3.0菜鸟学飞教程:类的编写之时间轴代码转换为外部类
Flash AS3.0菜鸟学飞教程:类的编写之不使用库元件
Flash cs3仿真艺术设计5.1:2.5D基础应用
Flash cs3仿真艺术设计5.2:2.5D高级应用
Flash AS3.0菜鸟学飞教程:含有多个类的AS3类文件
Flash AS3.0实例教程:AS3.0代码制作3D旋转动画效果
Flash cs3仿真艺术设计5.3:2.5D动画技巧之绘制猴子
Flash cs3仿真艺术设计5.4:交换方法制作嘴型吻合
Flash cs3仿真艺术设计5.5:嵌套法打造角色嘴型吻合

Flash动画制作 中的 Flash 动作脚本之:资料速查(19)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 32 ::
收藏到网摘: n/a

关于变量

    

关于变量

  变量是存储信息的容器。容器本身总是相同的,但内容可以改变。当播放动画时,通过变量可以记录和保存用户操作的信息,记录动画播放时改变了的值,或者计算某些条件是真还是假。

  在首次定义一个变量时,最好赋给它一个已知的值,这称为初始化变量。初始化变量常常是在动画的第一帧进行。对变量初始化使我们能够在播放动画时更容易跟踪和比较变量的值。

  变量可以存储任意类型的数据:数值、字符串、逻辑值、对象或电影剪辑。在脚本中给变量赋值时,变量存储数据的类型会影响该变量的值如何变化。

  变量可以存储的典型信息类型包括URL、用户名、数学运算结果、事件发生的次数,或一个按钮是否已被单击。 每个动画或电影剪辑实例都有它自己的一组变量,每个变量都有它自己的值,并与其它动画或电影剪辑中的变量无关。

一、命名变量

给变量命名必须遵守以下规则:

变量名必须是一个标识符。
变量名不能是一个关键字或逻辑常量(truefalse)。
变量名在它的作用范围内必须是唯一的(参阅变量的作用范围)。

二、变量的类型

  在中,无需显式定义一个变量是存储数值、字符串或其它数据类型。Flash在给变量赋值时自动确定变量的数据类型:
x = 3;
  在表达式x = 3中, Flash计算操作符右边的元素,确定它是属于数值型。后面的赋值操作会改变x的类型。例如,x = "hello"会把x的类型改为字符串型。没有赋值的变量的数据类型为undefined(未定义型)。

  当表达式请求时,ActionScript自动转换数据类型。例如,当你把一个值传递给trace 动作时,trace 自动把该值转换为字符串,并把它传送到输出窗口。在包含操作符的表达式中,ActionScript根据需要转换数据类型。例如,当使用一个字符串时,+操作符要求另一个操作数也是字符串:

"Next in line, number " + br>   ActionScript把数值7转换为字符串"7",并把它添加到第一个字符串的末尾,生成下面的字符串:

"Next in line, number 7"
  在调试脚本时确定表达式或变量的数据类型,对了解它们在动画播放时起什么作用是很有用的。使用typeof 操作符可以确定表达式或变量的类型,如下例所示: 

trace(typeof(variableName));

  使用Number函数,可以把字符串转换为数值。使用String函数,可以把数值转换为字符串。请参阅ActionScript词典中它们各自的词条。

三、变量的作用范围

  变量的作用范围是指能够识别和引用该变量的区域。在ActionScript中,变量可以是全局的和局部的(或称本地的)。全局变量可以在所有时间轴中共享;局部变量仅在它所在的代码块(大括号之间)中有效。

  可以在脚本中用var语句声明一个局部变量。例如,变量i和 j常常被用作循环计数器。在下面的例子中,i被用作局部变量,它仅存在于函数 makeDays内部:

function makeDays(){	var i	for( i = 0; i $#@60; monthArray[month]; i++ ) {	_root.Days.attachMovie( "DayDisplay", i, i + 2000 );	_root.Days[i].num = i + 1;	_root.Days[i]._x = column * _root.Days[i]._width;	_root.Days[i]._y = row * _root.Days[i]._height;	column = column + 1;	if (column == 7 ) {	column = 0;	row = row + 1;	}	}}

  使用局部变量有助于防止名字的冲突。在动画中名字的冲突会引起错误。例如,如果你用name作为局部变量,你就可以在一个脚本中用它来存储用户名,而在另一个脚本中存储电影剪辑实例名, 因为这些变量存在于彼