Javascript Lingo游戏-字符串字符等于另一个字符串字符

Javascript Lingo game - String char equal to another string char

本文关键字:字符 字符串 另一个 Lingo Javascript 游戏      更新时间:2023-09-26

我想做的是,如果checkW字符串中有一个字母在checkR中,那么我希望这个字母以var length=random.length的形式出现;document.write(数组(长度).join("?"));但不是吗?在字母处,它必须显示那个字母,直到找到整个单词。

示例:如果我键入endu,并且随机选择的国家是我想要输出这个nede的荷兰???nd,因为我们只在字符串中找到了这些字母。

<!DOCTYPE html>
    <html lang="nl">
    <head>
        <meta charset="utf-8">
        <title>Lingo spel</title>
        <meta name="description" content="Lingo spel voor de eu landen en hoofdsteden.">
        <meta name="Author" content="Ronald Julian Dewindt">
        <link rel="stylesheet" type="text/css" href="css/style.css">
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
        <!-- Optional theme -->
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">
        <link rel="stylesheet" type="text/css" href="style.css">
        <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
    </head>
    <body>
            <h3>Lingo spel - Eu landen en hoofdsteden</h3>
            <label>Typ een woord in:</label>
            <input type="text" value="" id="woord">
            <button type="button" onclick="lingo()">Check</button>
            <br><br>
            <p><b>Woorden geprobeerd!</b></p>
            <p id="try">-----</p>
        <script type="text/javascript">
            var euLanden = new Array('Nederlands','Duitsland','Zweden');
            var random =   euLanden[Math.floor(Math.random() * euLanden.length)]; 
            var random =   random.toLowerCase();
            var woordenG=  new Array();
            function lingo()
            {
                var woord = document.getElementById("woord").value;
                var woord = woord.toLowerCase();
                if(woord == "")
                    {
                        alert("U bent vergeten een woord in te typen!");
                        return;
                    }
                woordenG.push(woord);
                document.getElementById("try").innerHTML=woordenG;
                var checkW = woord.split('');
                var checkR = random.split('');
                alert(checkW);
                for(i=0; i<checkW.length; i++) //starts at 0++
                    {
                        alert(checkW[i]);
                        /*if(checkW[i] == checkR)
                            {
                                alert("Its working");
                            }*/
                    }
            }
        </script>
        <p id="hidden"><script>
            var length = random.length; document.write(Array(length).join("?"));
                       </script></p>
    </body>
    </html>

遍历国家/地区名称中的所有字母,并检查它们是否存在于用户的"输入"中。如果是,则将它们附加到结果中;如果不是,则在结果中附加一个问号:

function mask(countryName, textInput)
{
  var output = "";
  for(var i=0; i < countryName.length; i++)
  {
     if(textInput.contains(countryName[i]))
     {
        output += countryName[i];
     }
     else
     {
        output += "?";
     }
  }
  return output;
}

示例:

> mask("nederland", "endu")
< "nede???nd"

注意:你在问题中的例子有点缺陷;如果Lingo中的单词是"Nederland",并且已经猜到了字母"ENDU",则输出应该是"nede???nd",而不是"nede?????"