在JavaScript中通过函数传递变量

在JavaScript中通过函数传递变量,javascript,Javascript,我试图让一个函数运行并定义变量,另一个函数将能够重新确认该函数。我对Javascript有点陌生,所以我的代码可能只是一堆胡言乱语 function next() { var random = Math.floor(Math.random() * 15) document.getElementById("image").src = picture[random]; console.log(random); } function who() { var thing

我试图让一个函数运行并定义变量,另一个函数将能够重新确认该函数。我对Javascript有点陌生,所以我的代码可能只是一堆胡言乱语

function next() {
    var random = Math.floor(Math.random() * 15)
    document.getElementById("image").src = picture[random];
    console.log(random);
}

function who() {
    var thing = things[random];
    var text = document.getElementById("am").innerHTML = "I am " + thing + ".";
    console.log(text);
}
像这样:

var random;

function next() {
    random = Math.floor(Math.random() * 15);
    document.getElementById("image").src = picture[random];
    console.log(random);
}

function who() {
    var thing = things[random];
    var text = document.getElementById("am").innerHTML = "I am " + thing + ".";
    console.log(text);
}

首先定义随机变量,然后将其发送给函数,如下所示

var random = Math.floor(Math.random() * 15);

next(random);
who(random);

function next(random) {

    document.getElementById("image").src = picture[random];
    console.log(random);
}

function who(random) {
    var thing = things[random];
    var text = document.getElementById("am").innerHTML = "I am " + thing + ".";
    console.log(text);
}

对我认为这比我的好,因为每次使用next()时,random都会改变。我尝试过,但出于某种原因,它会说“我未定义”。我已经定义了前面定义的变量。对于我所有的代码,请执行但random不会更改我需要在每次运行next()时更改它