真才实料才是最真

Dream have no limit

统计

积分与排名

good link

最新评论

数组元素随机排序

发现flash中好像没有对数组元素进行随机排序的函数, 就自己写了一个. 虽然不是很科学, 起码可以用...
- -!

调用方法:  randomOrder (array)
函数会返回一个新数组, 就是该数组随机排序后的结果
例子:
 程序代码
var myArray : Array = ["a", "b", "c", "d"]
myArray = randomOrder (myArray )

 程序代码
//随机改变数组的排序
function randomOrder (targetArray : Array) : Array
{
    var arrayLength : Number = targetArray.length
    //
    //先创建一个正常顺序的数组
    var tempArray1 : Array = []
    for (var i = 0; i < arrayLength; i ++)
    {
        tempArray1 [i] = i
    }
    //
    //再根据上一个数组创建一个随机乱序的数组
    var tempArray2 : Array = []
    for (var i = 0; i < arrayLength; i ++)
    {
        //从正常顺序数组中随机抽出元素
        tempArray2 [i] = tempArray1.splice (Math.floor (Math.random () * tempArray1.length) , 1)
    }
    //
    //最后创建一个临时数组存储 根据上一个乱序的数组从targetArray中取得数据
    var tempArray3 : Array = []
    for (var i = 0; i < arrayLength; i ++)
    {
        tempArray3 [i] = targetArray [tempArray2 [i]]
    }
    //
    //返回最后得出的数组
    return tempArray3
}

posted on 2007-09-04 14:03 gavinkin555 阅读(959) 评论(1)  编辑 收藏 引用 所属分类: FLEX

只有注册用户登录后才能发表评论。