js获取数组中任意一项

一、获取数组任一项java

在一些实际应用场景中,会要求实现一个随机的需求,随机获取某一项,来展现出来,都知道要经过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())

二、数组中项随机排序dom

有些应用场景是要求随机排列数组中项,而后展现出来;数组的排序是经过sort()实现的,随机性固然仍是要Math.random()具体以下:this

//一样在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))
相关文章
相关标签/搜索