【问题标题】:User Input to Make Decisions using Iteration使用迭代做出决策的用户输入
【发布时间】:2018-08-03 02:17:21
【问题描述】:

我的代码是旧游戏 Mastermind 的一个版本,应该猜我的密码,如果用户猜对了字符,它会打印绿色字母,如果它的正确字符错误的地方,它会打印出红色和黑色,如果完全错误。

 <!doctype.html>
<html>
<head>
  <title> Mastermind </title>
<script>
  var secret= 'FLGRL';
  function init() {
    var button = document.getElementById('startButton');
    button.onclick = myButtonClick;
  }
  function myButtonClick() {
    var userTry = document.getElementById('userGuess').value;
    var ul = document.getElementById('guessList');
    var li = document.createElement('li');
  }
    for (var i=0; i < secret.length; i++) {
      var found = false;
      //if user finds right character, right spot
      if (userTry.charAt(i)===(secret.charAt(i))) {
        //if code and guess are a match, display letter in greeting
        li.innerHTML += userTry.charAt(i).fontcolor('green');
        found = true;
        //show user
      }
      //if character is in the code but in wrong
      else if {
            for (var j=0; j = charAt('secret'); j++) {
              var found = true;
              if (userTry.charAt(j)===(secret.charAt(j))){
                li.innerHTML += userTry.charAt(j).fontcolor('red');
              }

      if (found === false) {
        li.innerHTML += userTry.charAt(i). fontcolor('black');
        //show user character is wrong

      }
    }
    ul.appendChild(li);
    alert(userTry);

  window.onload = init;
  </script>
  </head>
  <body>
  <form>
  <input type="text" id="userGuess" size="15" placeholder="Your Guess">
  <input type="button" id="startButton" value="Place your Guess">
  </form>
  <ul id="guessList">
  </ul>
  </body>
  </html>

【问题讨论】:

  • 问题是什么?
  • 好的,现在这是我的代码,但是当我在浏览器中打开它时它根本没有运行,我一直在尝试自己调试它,但我快把自己逼疯了@HubertSchölnast跨度>
  • @HubertSchölnast 我已经将我的代码更新为自从这篇文章以来我一直在处理的内容
  • “它让我发疯”不是问题。你到底想知道什么?到底出了什么问题?你是如何尝试修复它的?当你尝试时发生了什么?你期待什么?
  • 转到stackoverflow.com/help/on-topic 并阅读项目#1。

标签: javascript function iteration user-input charat


【解决方案1】:

代码有很多错误,至少是您发布的代码。一个没有闭合的括号,这也是错误的

else if { Blockquote

if 是不必要的或缺少条件。还有,这是什么?

 for (var j=0; j = charAt('secret'); j++) 

条件错误。

我已经纠正了这件事,代码还没有 100% 纠正,但是:

 <!doctype.html>
   <html>

   <head>
     <title> Mastermind </title>
     <script>
       var secret = 'FLGRL';

       function init() {
         var button = document.getElementById('startButton');
         button.onclick = myButtonClick;
       }
       var userTry;

       function myButtonClick() {
         userTry = document.getElementById('userGuess').value;
         var ul = document.getElementById('guessList');
         var li = document.createElement('li');


         for (var i = 0; i < secret.length; i++) {
           var found = false;
           //if user finds right character, right spot
           if (userTry.charAt(i) === (secret.charAt(i))) {
             //if code and guess are a match, display letter in greeting
             li.innerHTML += userTry.charAt(i).fontcolor('green');
             found = true;
             //show user
           }
           //if character is in the code but in wrong
           else {
             for (var j = 0; j < secret.length; j++) {
               var found = true;
               if (userTry.charAt(j) === (secret.charAt(j))) {
                 li.innerHTML += userTry.charAt(j).fontcolor('red');
               }

               if (found === false) {
                 li.innerHTML += userTry.charAt(i).fontcolor('black');
                 //show user character is wrong

               }
             }
           }
         }
         ul.appendChild(li);
         alert(userTry);
       }

       window.onload = init;
     </script>
   </head>

   <body>
     <form>
       <input type="text" id="userGuess" size="15" placeholder="Your Guess">
       <input type="button" id="startButton" value="Place your Guess">
     </form>
     <ul id="guessList">
     </ul>
   </body>

   </html>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-30
    • 1970-01-01
    • 2021-07-13
    • 2020-02-18
    • 1970-01-01
    相关资源
    最近更新 更多