你的位置:首页 > 软件开发 > Java > js从数组中随机取出不同的元素

js从数组中随机取出不同的元素

发布时间:2016-09-09 17:00:06
前言 上午处理个需求需要从一个总数组中随机取出不同的元素。共使用两个方法。第一种方法较常规,经测试有bug,数据量大以后随机几次返回的对象直接是function而不是object。 当然简单数据类型应该没有这个问题。第二种是使用洗牌算法,亲测有效。 一、 ...

前言

      上午处理个需求需要从一个总数组中随机取出不同的元素。共使用两个方法。第一种方法较常规,经测试有bug,数据量大以后随机几次返回的对象直接是function而不是object。 当然简单数据类型应该没有这个问题。第二种是使用洗牌算法,亲测有效。

 

一、常规算法

 /**      从数组中随机抽取数据 2016-09-09    **/    function getArrItem(arr, num) {      var temp_array = new Array();      for (var index in arr) {        temp_array.push(arr[index]);      }      var return_array = new Array();      for (var i = 0; i < num; i++) {        if (temp_array.length > 0) {          var arrIndex = Math.floor(Math.random() * temp_array.length);          return_array[i] = temp_array[arrIndex];          temp_array.splice(arrIndex, 1);        } else {          break;        }      }      return return_array;    }

原标题:js从数组中随机取出不同的元素

关键词:JS

JS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。