js隨機取出陣列中不重複值元素程式碼和例項
本章節介紹一下如何從陣列中隨機取出不重複的元素,這樣的效果比較適用於抽獎效果。
最好當前的陣列中的元素是不重複的,如果有重複的可以事先進行去重操作,可以參閱javascript如何去掉陣列中重複的值一章節。程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼var arr=[5,6,9,10,18,20,30,22,24]; var temp=[]; function done(arr){ var count=arr.length; var rand=parseInt(Math.random()*count); if(temp.length==0){ return arr[rand]; } else{ for(var index=0;index<temp.length;index++){ if(arr[rand]==temp[index]){ continue; } else{ temp.push(arr[rand]); return arr[rand]; } } } } console.log(done(arr));
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
1.var arr=[5,6,9,10,18,20,30,22,24],要取隨機數的陣列。
2.var temp=[],宣告一個空陣列用來儲存已經取過的元素。
3.function done(arr){},此函式實現了取隨機數的功能,引數是一個陣列物件。
4.var count=arr.length,獲取陣列的長度。
5.var rand=parseInt(Math.random()*count),獲取隨機數。
6.if(temp.length==0){
return arr[rand];
},如果臨時陣列的中的元素為零,那麼直接返回相應索引的元素,因為不可能有重複的。
7.else{
for(var index=0;index<temp.length;index++){
if(arr[rand]==temp[index]){
continue;
}
else{
temp.push(arr[rand]);
return arr[rand];
}
}
},遍歷臨時陣列,與當前取出的陣列元素進行比對,如果在臨時陣列中,那麼進行下一個for迴圈,否則的話將元素壓入臨時陣列,然後返回此陣列元素。
二.相關閱讀:
1.parseInt()函式可以參閱js parseInt()一章節。
2.Math.random()函式可以參閱javascript Math.random()一章節。
3.push()函式javascript push()一章節。
相關文章
- JavaScript陣列中隨機取出不重複項JavaScript陣列隨機
- JavaScript 陣列隨機不重複元素JavaScript陣列隨機
- js生成不重複數字陣列程式碼例項JS陣列
- js 的陣列去除重複元素程式碼例項JS陣列
- js刪除陣列重複元素程式碼例項JS陣列
- javascript生成不重複隨機數程式碼例項JavaScript隨機
- javascript去除陣列中重複元素程式碼例項JavaScript陣列
- js實現從陣列中取出一個隨機項JS陣列隨機
- js陣列元素排序程式碼例項JS陣列排序
- js獲取指定位數不重複隨機數程式碼例項JS隨機
- javascript刪除陣列中重複元素程式碼例項JavaScript陣列
- 使用jQuery去除陣列中的重複元素程式碼例項jQuery陣列
- js刪除陣列中重複項的程式碼例項JS陣列
- js 陣列元素大小排序例項程式碼JS陣列排序
- javascript刪除陣列重複元素程式碼例項JavaScript陣列
- javascript按照值刪除陣列元素程式碼例項JavaScript陣列
- javascript 從一組陣列中隨機取出一項JavaScript陣列隨機
- js判斷陣列中是否含有指定元素程式碼例項JS陣列
- js不重複抽獎效果程式碼例項JS
- JavaScript提取兩個陣列重複元素程式碼例項JavaScript陣列
- 如何從陣列中隨機取出幾個值組成新的陣列?陣列隨機
- js從陣列隨機取一個資料程式碼例項JS陣列隨機
- 過濾陣列元素程式碼例項陣列
- 刪除陣列中的指定元素例項程式碼陣列
- js將陣列元素轉換為字串程式碼例項JS陣列字串
- js將陣列元素順序倒轉程式碼例項JS陣列
- python怎麼生成隨機不重複陣列Python隨機陣列
- js獲取陣列的最大值和最小值程式碼例項JS陣列
- js獲取數字陣列中的最大值和最小值程式碼例項JS陣列
- js陣列求和程式碼例項JS陣列
- javascript遍歷陣列元素程式碼例項JavaScript陣列
- js陣列去重程式碼例項JS陣列
- jQuery遍歷array陣列元素程式碼例項jQuery陣列
- js生成隨機數程式碼例項JS隨機
- js隨機顏色例項程式碼JS隨機
- js重置form表單元素值程式碼例項JSORM
- javascript刪除陣列指定值程式碼例項JavaScript陣列
- javascript將陣列中的元素連線成字串程式碼例項JavaScript陣列字串