数组元素随机排序
2014年03月13日
⁄ 综合
⁄ 共 928字 ⁄ 字号
小 中 大
- 调用方法: 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
- }