JS写随机数

使用JS编写一个方法 让数组中的元素每次刷新随机排列(不得使用sort方法;需注明步骤思路)。例如:初始数组:a,b,c,d  每次刷新页面都会显示不一样:b,c,d,a….a,d,c,b…等等
代码:
 
<html><head>    <title></title>    <meta charset="utf-8"></head><body><!--变换顺序按钮--><input type="button" id="btnSort" value="变换顺序"/><script type="text/javascript" charset="UTF-8">    var arr=["a","b","c","d"];          //定义一个数组,内容为a,b,c,d    var btn=document.getElementById("btnSort");  //获取按钮button的节点    btn.onclick=function(){        var newArr=arrSort(arr);        console.log(newArr.join(","));           //将数组newArr的内容,在控制台以逗号分开进行输出    }    function arrSort(arr){           //定义一个函数        var newArr=[];          //定义一个新的数组         var temp=[];          //定义一个新的数组        for(var p in arr){    //引用类型不能直接用等号,经过循环来进行复制; 这里的p为下标,表示为取数组arr中的下标            temp[p]=arr[p];     //将数组arr中的数赋值给新数组temp        }        for(var i=0;i<arr.length;i++){   //随机数  最小值为0;  最大值为  数组的长度-1            var random=Math.round(Math.random()*(temp.length-1));  //生成0-数组temp.length-1的随机数            newArr[i]=temp[random];              //将数组temp随机生成的数赋值给新数组newArr            temp.splice(random,1);              //删除已经生成了的随机数对应的数组temp下标的值;        }        return newArr;    }</script></body></html>
相关文章
相关标签/搜索