Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript数组随机选择问题_Javascript_Arrays - Fatal编程技术网

Javascript数组随机选择问题

Javascript数组随机选择问题,javascript,arrays,Javascript,Arrays,我的问题是,我不知道如何使“selected”成为随机选择的变量 基本上,如果它滚动,例如,我想被选为“一”,其他人也一样 ------编辑------ 我忘了指定,我需要它将变量名返回为“choose”,实际值返回为“selected”据我所知,您希望返回随机选择的字段名和字段值。 下面是一个片段: var eg=“一” var eg2=“两个” var eg3=“三个” 函数choseRandom(){ var rand=[“eg”、“eg2”、“eg3”]; var act=[例如,eg

我的问题是,我不知道如何使“selected”成为随机选择的变量

基本上,如果它滚动,例如,我想被选为“一”,其他人也一样

------编辑------
我忘了指定,我需要它将变量名返回为“choose”,实际值返回为“selected”

据我所知,您希望返回随机选择的字段名和字段值。 下面是一个片段:

var eg=“一”
var eg2=“两个”
var eg3=“三个”
函数choseRandom(){
var rand=[“eg”、“eg2”、“eg3”];
var act=[例如,eg2,eg3];
var chosenIndex=Math.floor(Math.random()*rand.length);
var fieldName=rand[chosenIndex]
var fieldValue=act[chosenIndex]
返回[fieldName,fieldValue];
}
log(choseRandom());
log(choseRandom());

log(choseRandom())您只需存储所获得的随机数,并在需要时与数组一起传递。这是一个片段

根据您的问题进行更新

var eg=“一”
var eg2=“两个”
var eg3=“三个”
函数randomchoose(){
var rand=[“eg”、“eg2”、“eg3”];
var act=[例如,eg2,eg3];
randomNumber=Math.floor(Math.random()*rand.length)
选择=行动[随机数]
选择=兰德[随机数]
返回[选择,选择];
}

console.log(randomchoose())
choosed=act[rand.indexOf(choose)]使用一个对象而不是多个变量来存储值

var数据={
例如:“一个”,
eg2:“两个”,
eg3:“三个”
}
函数randomchoose(){
var rand=[“eg”、“eg2”、“eg3”];
choose=rand[Math.floor(Math.random()*rand.length)]
选择=数据[选择]
返回[选择,选择];
}

console.log(randomchoose())
您计划如何处理返回的变量名?听起来您应该创建一个对象,而不是使用多个变量。在我的代码段中,哪些变量不适合您?如果有问题,我会更新答案,但它应该能正常工作。啊,好的。此外,我还更新了
choose
choosed
变量,以更好地反映目的,并使它们成为局部变量,而不是全局变量()。另外,您可能希望将返回值从一个数组更改为另一个对象,但我想这取决于您的情况。在我的情况下,我需要数组,这段小代码稍后使用并需要数组…非常具体,我知道哈哈,无论如何,非常感谢您的帮助!我现在笑了,谁否决了这个,为什么?很高兴能帮助你:)你能给出一个更详细的答案吗。例如,您可以发布一个固定代码的示例。
var eg = "one"
var eg2 = "two"
var eg3 = "three"

function randomchoose() {
    var rand = ["eg", "eg2", "eg3"];
    var act = [eg, eg2, eg3];
    choose = rand[Math.floor(Math.random()*rand.length)]
    chosen = act[choose]
    return [chosen, choose];
}