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

Flash动画制作
Flash卡通景物绘制
鼠绘偏写实人物
鼠绘--柱顶红的画法
FLASH实现滚动条+网页书签效果
Flash MX中Button Object的用法
as入门之数学函数--弧度
as入门之数学函数--Math类
闪动的变色圆盘
组件封装为mxp文件的方法
判断数字大小
Flash 缓存问题的解决
Flash MX pro 2004 新特性之Flash Lite
在Flah MX2004的ListBox中应用HTML
Flash MX 2004中的XML应用之原理篇
Flash MX 2004视频教程超速入门系列(1)
Flash MX 2004视频教程超速入门系列(2)
Flash MX 2004视频教程超速入门系列(3)
Flash MX 2004视频教程超速入门系列(4)
Flash MX 2004视频教程超速入门系列(5)
Flash MX 2004视频教程超速入门系列(6)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 56 ::
收藏到网摘: 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作为局部变量,你就可以在一个脚本中用它来存储用户名,而在另一个脚本中存储电影剪辑实例名, 因为这些变量存在于彼