2

我在一个函数中放置了多个变量,我想知道 JavaScript 中是否有任何方法可以在该函数中随机选择一个变量。任何帮助是极大的赞赏。非常感谢。

4

3 回答 3

8

如果您使用数组而不是多个变量,则可以从数组中选择一个随机元素:

function test() {
    var values = ["test","values","go","here"],
        valueToUse = values[Math.floor(Math.random() * values.length)];
    // do something with the selected value
    alert(valueToUse);
}

演示:http: //jsfiddle.net/XDn2f/

(当然,数组不必包含像我展示的字符串那样的简单值,你可以有一个对象数组,或者对其他函数的引用等)

于 2013-01-20T06:22:22.620 回答
1

如果您的参数之一是数组,您可以从中随机选择一个值。

function myFunc(arrayInput)
{
     var randomIndex = Math.floor((Math.random()*10)+1);
     return (arrayInput[randomIndex]);
}
于 2013-01-20T06:22:45.257 回答
0

如果您有 N 个变量,那么将它们放在一个数组中并在该数组中生成一个随机索引是最干净的。

var items = [1,2,3,4];
var index = Math.floor(Math.random() * items.length);
items[index] = whatever;

如果您只有几个变量,您可以生成一个随机数并使用if/else语句对所需变量进行操作。

var a, b;
var index = Math.random();
if (index < 0.5) {
    // operate on a
    a = 3;
} else {
    // operate on b
    b = 3;
}
于 2013-01-20T06:26:29.273 回答