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>
相關文章
相關標籤/搜索