繁体   English   中英

如何从数组中选择一个随机项?

[英]How can i choose one random item from an array?

我尝试了以下代码,但没有用:

<html>
<body>
<p id="demo"></p>
<p id="demo2"></p>

<script>

var max=1000;
var text=new Array();
var i=0;

for (i; i<=max ; i++) {
    text[i]=i;
}
var newx0=new Array();
newx0.push(text);
var rand = newx0[Math.floor(Math.random() * newx0.length)];
var randomx0=newx0[Math.floor(Math.random()* newx0.length)];
document.getElementById("demo").innerHTML = rand;
document.getElementById("demo2").innerHTML = newx0;

问题是兰德有价值的印刷品0到1000,就像newx0有价值的

new0是一个数组,其中包含一个元素:另一个text数组。 这意味着newx0.length始终为1 您为什么仍要进行该数组包装? 为什么不拥有

var rand = text[Math.floor(Math.random() * text.length)];
           ^^^^                            ^^^^

代替?

/**
 * Returns a random integer between min (inclusive) and max (inclusive)
 * Using Math.round() will give you a non-uniform distribution!
 */
function getRandomInt(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
}

var array = [wherever your array comes from];     //Set up your array to be sampled
var randIndex = getRandomInt(0, array.length());  //Randomly select an index within the array's range
var randSelectedObj = array[randIndex];           //Access the element in the array at the selected index

getRandomInt来自此处: 在JavaScript中生成特定范围内的随机整数?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM