在Javascript中从用户输入追加一个数组

Appending an array from user input in Javascript

本文关键字:一个 数组 追加 Javascript 用户 输入      更新时间:2023-09-26

大家好,我是JavaScript新手。长话短说,下周我将开始一个网络开发新兵训练营,这样我就可以在新年后换工作了。我完全掌握了HTML和CSS,我也做了一些swift。不管怎样,数组是一种让我着迷的东西,所以我想挑战一下自己,给我一些小任务,看看我能不能做到。这一个是从用户输入追加一个数组,然后显示它。我已经工作了一段时间,并通过样本代码和其他论坛搜索,我在损失。现在我正在使用一个基本的文本编辑器,因为我在"停机时间"工作时做这些,如果你明白我的意思,也许这是一个打字错误,新鲜的眼睛可能会发现。

无论如何,非常感谢任何建议。

<!doctype html>
 <html>
<head>

<meta charset="utf-8" />
 <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
 <meta name="viewport" content="width=device-width, initial-scale=1" />
</head>

  <body>
  <input id="names" />
 <button id="nameSubmit">Please Enter A Name</button>
<p id="output"></p>

  <script>

  document.getElementById("nameSubmit").onclick = function(); {
 var nameArray = ["Sean", "Ryan", "Amanda"];
 var name = document.getElementById("names").value;
      nameArray.push("name");
       nameArray.ToString();
       document.getElementById("output").innerhtml = nameArray;
  }

   </script>
   </body>
      </html>

你有一些基本的错误

nameArray.push("name");  //You are pushing the string name, not the variable
nameArray.ToString();    //Does nothing
document.getElementById("output").innerhtml = nameArray;  //there is no innerhtml, case matters.
应该

nameArray.push(name);  
document.getElementById("output").innerHTML = nameArray.join(",");  

现在的问题是你在click中声明了数组,所以它总是会重置。如果你不想让它重置,你需要把它移到外面。


var nameArray = ["Sean", "Ryan", "Amanda"];
document.getElementById("nameSubmit").onclick = function() {
  var name = document.getElementById("names").value;
  nameArray.push(name);
  document.getElementById("output").innerHTML = nameArray.join(",");
};
<input id="names" />
<button id="nameSubmit">Please Enter A Name</button>
<p id="output"></p>