Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_Function - Fatal编程技术网

Javascript 如何运行在不同函数中定义的代码

Javascript 如何运行在不同函数中定义的代码,javascript,arrays,function,Javascript,Arrays,Function,我有一些代码在页面加载时从数组中生成一个随机值 window.onload = startGame; function startGame() { document.getElementById("startGame").onclick = startHangman; document.getElementById("checkLetter").onclick = checkLetter; var hangmanWord = "";

我有一些代码在页面加载时从数组中生成一个随机值

window.onload = startGame;

    function startGame() {
        document.getElementById("startGame").onclick = startHangman;
        document.getElementById("checkLetter").onclick = checkLetter;
        var hangmanWord = "";
        var words = ["APPLE", "COMPUTER", "BEDSHEET", "CASTE", "WATER", "LANTERN", "COFFE", "PROGRAMMER", "PILLOW", "CHEDDARCHIPOTLE POTETGULL"];
        var hangmanWord = words[Math.floor(Math.random() * words.length)];
            console.log(hangmanWord);
    }
我还有一个函数,用于检查输入值是否包含在页面加载时生成的随机值中

function checkLetter() {

        var letter = document.getElementById("letter").value.toUpperCase();

        for (var i = 0; i < hangmanWord.length; i++) {
            if (hangmanWord[i] === letter) {
                console.log(hangmanWord[i]);
                var printLetter = document.createElement("p");
                var displayLetter = document.createTextNode(letter);
                printLetter.appendChild(displayLetter);
                document.getElementById("printLetter").appendChild(displayLetter);
            }
        }
函数checkLetter(){
var letter=document.getElementById(“letter”).value.toUpperCase();
for(变量i=0;i

我怎样才能做到这一点?我必须使用某种函数参数吗?

使hangman成为一个全局变量,即更改

window.onload = startGame;

function startGame() {
    document.getElementById("startGame").onclick = startHangman;
    document.getElementById("checkLetter").onclick = checkLetter;
    var hangmanWord = "";
    var words = ["APPLE", "COMPUTER", "BEDSHEET", "CASTE", "WATER", "LANTERN", "COFFE", "PROGRAMMER", "PILLOW", "CHEDDARCHIPOTLE POTETGULL"];
    var hangmanWord = words[Math.floor(Math.random() * words.length)];
        console.log(hangmanWord);
}


使hangman成为一个全局变量

window.onload = startGame;

function startGame() {
    document.getElementById("startGame").onclick = startHangman;
    document.getElementById("checkLetter").onclick = checkLetter;
    var hangmanWord = "";
    var words = ["APPLE", "COMPUTER", "BEDSHEET", "CASTE", "WATER", "LANTERN", "COFFE", "PROGRAMMER", "PILLOW", "CHEDDARCHIPOTLE POTETGULL"];
    var hangmanWord = words[Math.floor(Math.random() * words.length)];
        console.log(hangmanWord);
}


你可以把
hangmanWord
作为一个全局变量,而不是局部作用于你的
startGame
函数。好吧,为什么我没有想到这一点呢..非常感谢。它很有效:)你可以把
hangmanWord
作为一个全局变量,而不是局部作用于你的
startGame
函数。好吧,为什么我没有想到这一点..谢谢ot.It work:)这样做,checkLetter函数将只返回:“”这样,checkLetter函数将只返回:“”