本章摘要:
数组保存一组相关联的数据,组织和处理这些数据。数组概念在生活中是很常见的,比如菜谱,工资条,班级成绩单等都应用了数组原理。
在flash中存在一组变量后缀名,如果给变量添加上这个后缀名,那么在下次使用这个变量的时候,可以自动出现代码提示。数组的变量后缀名是_arr,MovieClip的后罪名是_mc。(完整的代码后罪名参考)
访问数组元素,通过下标。比如一个数组声明为
var arr1:Array = ["A", "B", "C"];
那么它的第一个元素,就是arr1[0],第二个元素就是arr1[1],第三个元素是arr1[2]。这里一个需要注意的地方是,数组的小标是从0开始的,而不是我们日常使用的1。在这一点上很多老手也会偶尔搞错。因为我们在为舞台上的MC编号时,经常仍旧是使用1开头。
Array.concat()
连接参数,并将其作为新数组返回。
Array.join()
将数组内的所有元素联接为一个字符串。
Array.pop()
删除数组中最后一个元素,并返回该元素的值。
Array.push()
将一个或多个元素添加到数组的结尾,并返回该数组的新长度。
Array.reverse()
倒转数组的方向。
Array.shift()
删除数组中第一个元素,并返回该元素的值。
Array.slice()
提取数组中的一部分,并将该部分作为新数组返回。
Array.sort()
就地对数组进行排序。
Array.sortOn()
基于数组中的某个字段对数组进行排序。
Array.splice()
在数组中添加元素和删除元素。
Array.toString()
返回表示 Array 对象中元素的字符串值。
Array.unshift()
将一个或多个元素添加到数组的开头,并返回该数组的新长度。
第一种方法比较直观,但是当按钮比较多的时候,拖动和排布的琐碎操作也很费事,我们这里采用程序的方式来动态控制。(数组应用-手机菜单-code1.fla)
现在来创建一个数组来存放所有的六个条目,可以像上一章那样直接将六个条目名称放到数组里,也可以像下面这样一步一步创建。
刚才我们创建条目数组的过程,和上一张创建导航栏条目数组的最大区别,是上一张我们的数组元素是条目的名,而这里我们使用的是名字的字符串(有双引号),它们有什么不同呢?
使用名称字符串做元素,那么它就是字符串,通过字符串是不能直接访问MC的,我们必须把这个字符串转换成MC的引用(也就是我们说的MC名),如何转换呢?在AS1/2中,我们使用“[]”,比如主时间轴舞台上有一个MC名为mc1,那么通过_root.mc1或_root[“mc1”]都是可以访问到它。在这里[]的作用大致可以描述为将字符串转换为引用。
虽然我们已经在舞台上显示出来六个条目,但是条目上面都是空白的,虽然我们建立了条目显示名称的数组,但是这个数组还并未和我们的六个条目联系起来。
Array.push() -- 将一个或多个元素添加到数组的结尾,并返回该数组的新长度。我们添加下面这段代码:
数组的知识很重要,应用广泛作用巨大。我们需要将这个知识点掌握好。请大家认真地参照着本书的源文件,一步一步地实验,并输出查看效果,在一些不太明白的地方,多用trace,看看输出。在未来我们还会讲一些调试的方法,到时候用调试结合trace,大家可以更深入地了解这些方法的运作原理和作用。
全文pdf阅读: Flash程序设计》第四章、Flash数组的应用.pdf
鬼火博客地址:http://www.birdpig.com/
本书发布网站:http://birdpig1.blogspot.com/
写作进度关注:http://www.birdpig.com/post/flash-program-beta.html
[作者:鬼火,来源:http://www.birdpig.com/,转载须保留本行及链接]
2008年8月13日星期三
《Flash程序设计》第四章、Flash数组的应用
订阅:
博文评论 (Atom)
1 条评论:
好棒哦!
发表评论