我试图显示数组中的 3 个随机值。以下脚本仅从 javaScript 数组返回单个项目。
var arrayNum = ['One', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine'];
var singleRandom = arrayNum[Math.floor(Math.random() * arrayNum.length)];
alert(singleRandom);
但我想显示数组中的三个随机值arrayNum
,任何人都可以指导我是否可以使用 javascript 从数组中获取 3 个唯一的随机值?如果有人指导我,我将不胜感激。谢谢
我假设您询问如何获取由当前数组中的三个元素组成的新数组。
如果您不介意重复的可能性,您可以执行一些简单的操作,例如:getThree
below.
但是,如果您不希望值重复,则可以使用getUnique
.
var arrayNum = ['One', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine'];
function getThree() {
return [
arrayNum[Math.floor(Math.random() * arrayNum.length)],
arrayNum[Math.floor(Math.random() * arrayNum.length)],
arrayNum[Math.floor(Math.random() * arrayNum.length)]
];
}
function getUnique(count) {
// Make a copy of the array
var tmp = arrayNum.slice(arrayNum);
var ret = [];
for (var i = 0; i < count; i++) {
var index = Math.floor(Math.random() * tmp.length);
var removed = tmp.splice(index, 1);
// Since we are only removing one element
ret.push(removed[0]);
}
return ret;
}
console.log(getThree());
console.log("---");
console.log(getUnique(3));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)