JS从数组中随机取出几个数组元素的方法

原文链接:http://caibaojian.com/js-get-random-elements-from-array.html

js如何从一个数组中随机取出一个元素或者几个元素。

假如数组为·

var items = [‘1‘,‘2‘,‘4‘,‘5‘,‘6‘,‘7‘,‘8‘,‘9‘,‘10‘];

1.从数组items中随机取出一个元素

var item = items[Math.floor(Math.random()*items.length)];

2.从前面的一篇随机数组中随机取几个元素

function getRandomArrayElements(arr, count) {
    var shuffled = arr.slice(0), i = arr.length, min = i - count, temp, index;
    while (i-- > min) {
        index = Math.floor((i + 1) * Math.random());
        temp = shuffled[index];
        shuffled[index] = shuffled[i];
        shuffled[i] = temp;
    }
    return shuffled.slice(min);
}

var items = [‘1‘,‘2‘,‘4‘,‘5‘,‘6‘,‘7‘,‘8‘,‘9‘,‘10‘];
console.log( getRandomArrayElements(items, 4) );

原文地址:https://www.cnblogs.com/xiaozhumaopao/p/10123708.html

时间: 2024-07-29 09:50:01

JS从数组中随机取出几个数组元素的方法的相关文章

array_rand() 从数组中随机取出一个或多个单元

array_rand() - 从数组中随机取出一个或多个单元 mixed array_rand ( array $input [, int $num_req = 1 ] ) 从数组中取出一个或多个随机的单元,并返回随机条目的一个或多个键. 参数 input: 输入的数组.必需.规定数组. num_req: 指明了你想取出多少个单元.可选.规定返回多少随机键名.如果指定的数目超过了数组里的数量将会产生一个 E_WARNING 级别的错误. 例子 1 从数组返回一个随机键: <?php $a=arr

从一个数组中随机取出一定数量元素组成新数组

/** * 从一个数组中随机取出一定数量元素组成新数组 * @param array 一个String类型的数组 * @param number需要取出元素的数量 * @return 一个随机的数组 * @throws NullPointerException原数组不能为空 *@throws ArrayIndexOutOfBoundsException新数组长度应不大于原数组的长度 */ public static String[]  getRandomArray(String[] array,

JS 在指定数组中随机取出N个不重复的数据

/**思路:每次随机从数组抽出一个数放进新的数组,然后将这个数从原数组中剔除,这个就不会抽到重复的数了*/function makeRandomArr(arrList,num){ if(num>arrList.length){ return; } // var tempArr=arrList.concat(); var tempArr=arrList.slice(0); var newArrList=[]; for(var i=0;i<num;i++){ var random=Math.flo

JS如何从数组中随机取出若干个数,且不重复

//原数组 var arr = [0,1,2,3,4,5,6,7,8,9,10,11]; //输出数组 var out = []; //输出个数 var num = 5; while(out.length < num){     var temp = (Math.random()*arr.length) >> 0;     out.push(arr.splice(temp,1)); } alert(out);

JS案例之8——从一个数组中随机取数

近期项目中遇到一个需求,从一个列表中随机展示列表的部分内容,需求不大,JS也非常容易实现.主要是运用到了Math对象的random方法,和Array的splice方法. 思路是先新建一个数组,存放所有的列表,然后算出随机数,从数组中取出这个随机索引对应的值,然后组成一个随机数组. 源代码如下: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" Conten

从一个数组中随机的取出若干个不同的数

/* * 此程序是从一个不重复的数组中随机的取出若干个不同的元素 * 难点是防止在取数的时候出现已经取到过的情况(特别是取到最后),需要尽可能的降低碰撞 */ //第一种算法,CSDN上别人的想法 /* $num = 0; $array = array(1, 2, 3, 4, 5, 6, 7, 8, 9); $arr = array(); $g = 5; $tag = true; while ($tag) { $count = count($array); $t = rand(0, 1); if

js在数组arr中随机获取count数量的元素

// 在数组arr中随机获取count数量的元素; const getRandomArrayElements = (arr, num) => { // 新建一个数组,将传入的数组复制过来,用于运算,而不要直接操作传入的数组; let temp_array = new Array(); for (let index in arr) { temp_array.push(arr[index]); } // 取出的数值项,保存在此数组 let return_array = new Array(); fo

js实现从长度为100的数组中随机抽取5个不同值

方法一:这个是我的方法,望大家指正…… <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>从长度为100的数组中随机抽取5个不同值</title> </head> <body> <script> var arr = new Array(100); var flag_a =

PHP中如何在数组中随机抽取n个数据的值 - array_rand()?

PHP中如何在数组中随机抽取n个数据的值? 最佳答案 array_rand() 在你想从数组中取出一个或多个随机的单元时相当有用.它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1.如果你只取出一个,array_rand() 返回一个随机单元的键名,否则就返回一个包含随机键名的数组.这样你就可以随机从数组中取出键名和值. 如下例所示: <?php $input = array("Neo", "Morp