js獲取數組中任意一項


1、獲取數組任一項

在一些實際應用場景中,會要求實現一個隨機的需求,隨機獲取某一項,來展示出來,都知道要通過javaScript的Math.random()方法來實現,這里我在Array的原型上添加了一個random方法:

 1 //在Array原型上創建一個random方法
 2 Array.prototype.random = function () {
 3     var idx = Math.floor((Math.random() * this.length));
 4     //var n = this.slice(idx, idx+1)[0];//或者用下面splice()
 5     var n = this.splice(idx,1)[0];
 6     return n;
 7 }
 8 
 9 //聲明任意一個數組
10 var arr=[1,2,3,"a","b"];
11 //可直接像調用數組其他操作方法一樣使用,如arr.random(),返回值便是arr任一項
12 console.log(arr.random())

2、數組中項隨機排序

有些應用場景是要求隨機排列數組中項,然后展示出來;數組的排序是通過sort()實現的,隨機性當然還是要Math.random()具體如下:

//同樣在Array原型創建一個方法randomsort();
Array.prototype.randomsort = function (a, b) {
    return Math.random() > .5 ? -1 : 1; //通過隨機產生0到1的數,然后判斷是否大於0.5從而影響排序,產生隨機性的效果。
}
//調用方式還是通過sort()方法,根絕傳值不同,來實現的
console.log(arr1.sort(arr1.randomsort))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM