Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.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_Variables_Random_Save - Fatal编程技术网

Javascript 如何保存随机生成的数字的值,以便在不同的函数中调用?

Javascript 如何保存随机生成的数字的值,以便在不同的函数中调用?,javascript,variables,random,save,Javascript,Variables,Random,Save,如何保存随机数生成器函数的输出,以便在其他函数中调用 例如,在下面的代码中,我将使用函数randNum()掷骰子,并将w的值作为变量返回到saveDiceNumber()函数 然后,我将从randNum()函数收到的第一个值保存到位于saveDiceNumber()函数中的新变量x。然后我想对变量y和z重复这个过程,而不会丢失新创建的x值 本质上,我想创建一个函数,它使用相同的随机数生成器创建3个不同的变量,然后调用这些变量的值,而不必重新生成/重新滚动随机数 随机数生成器函数: functi

如何保存随机数生成器函数的输出,以便在其他函数中调用

例如,在下面的代码中,我将使用
函数randNum()
掷骰子,并
w
的值作为变量返回到
saveDiceNumber()
函数

然后,我将从
randNum()
函数收到的第一个值保存到位于
saveDiceNumber()
函数中的新变量
x
。然后我想对变量
y
z
重复这个过程,而不会丢失新创建的
x

本质上,我想创建一个函数,它使用相同的随机数生成器创建3个不同的变量,然后调用这些变量的值,而不必重新生成/重新滚动随机数


随机数生成器函数:

function randNum(){
    return Math.floor(Math.random()*6); 
}
应保存RNG输出的功能:

function saveDiceNumber(){
    var w = randNum(); //roll the dice for the first permanent value

    var x = randNum(); //second output of dice
    var y = randNum(); //third output of dice
    var z = randNum(); //forth output of dice

    pickFruit(x);
    }
其中将使用
saveDiceNumber()
的输出:

   function pickFruit(letter){

       switch(letter){
       case(1):
       console.log("Apples");
       break;
       case(2):
       console.log("Pears");
       break;
       case(3):
       console.log("Bananas");
       break;
       case(4):
       console.log("Mangos");
       break;
       case(5):
       console.log("Pineapples");
       break;
       case(6):
       console.log("Avacados");
       break;
}
键入:
saveDiceNumber()
每次控制台都会记录不同的水果,即使函数
pickFruit(x)
是相同的

我需要变量
x
的值永久等于
=
使用
randNum()
函数一次生成的值


因此,如果我掷3,那么
x
需要永久等于3。

如果这个问题理解起来非常混乱,我深表歉意。我已通过执行以下操作成功修复了所需内容:

//global variables
        var x = randNum1();
        var y = randNum2();
        var z = randNum3();

function randNum1(){
    return Math.floor(Math.random()*6); 
}

function randNum2(){
    return Math.floor(Math.random()*6); 
}

function randNum3(){
    return Math.floor(Math.random()*6); 
}

pickFruit(x);
pickFruit(y);
pickFruit(z);

顺便问一下,数学地板(6)
的目的是什么?是的
Math.floor
-ing
6
你在哪里使用
x
,…
z
?您需要知道最后的值吗?那堆栈呢?为什么不干脆
x=randNum();y=randNum();z=randNum()(不,我不懂编辑。)您是否只需要
saveDiceNumber
中的三个变量?为什么字母是一个数字?