如何填充空的JavaScript数组?

如何填充空的JavaScript数组?,javascript,Javascript,我在网上到处寻找可以帮助我用给定值填充空数组的东西,用户从文本框输入的值将存储在数组中 到目前为止,我有以下代码: var text = document.getElementById("input").value; var message = document.getElementById("text-here"); message.innerHTML += text + " " + "<br />"

我在网上到处寻找可以帮助我用给定值填充空数组的东西,用户从文本框输入的值将存储在数组中

到目前为止,我有以下代码:

var text = document.getElementById("input").value;
var message = document.getElementById("text-here");
message.innerHTML += text + " " + "<br />" + "<br />";
  var x = [];
  x.push(text);


  console.log(x);
但如果我再次输入某个内容,希望结果将继续存储输入的数据,它会这样做:

*在文本框中写下“Hi”:

["Hi"]
我希望结果是这样的:

["Hello", "Hi"]
我知道我的代码确实需要调整,我做了一些错误的事情,这导致了这个结果,但我似乎无法找到答案

我正在用香草JavaScript寻找答案


谢谢。

问题在于每次运行该代码时,您都在重新声明变量x并使用空数组初始化它。通过将x移出当前函数或块,使其成为全局变量

var x = [];
另一个街区

var text = document.getElementById("input").value;
var message = document.getElementById("text-here");
message.innerHTML += text + " " + "<br />" + "<br />";
x.push(text);
console.log(x);
var text=document.getElementById(“输入”).value;
var message=document.getElementById(“此处的文本”);
message.innerHTML+=text++“
”+“
”; x、 推送(文本); 控制台日志(x);
var x=[];
函数(){
var text=document.getElementById(“输入”).value;
var message=document.getElementById(“此处的文本”);
message.innerHTML+=text++“
”+“
”; x、 推送(文本); 控制台日志(x); }

像这样的事情应该可以解决你的问题。每次运行javascript时,您都将x声明为空数组,这会将其重置为空数组。

每次添加元素之前,您都会重新初始化数组。只需确保它的初始化一次,然后你只推到它。您可能需要将该初始化从事件侦听器中删除;在函数之前,从函数中删除声明。如何使数组变为可值的“x”全局数组,而不是局部数组?
var text = document.getElementById("input").value;
var message = document.getElementById("text-here");
message.innerHTML += text + " " + "<br />" + "<br />";
x.push(text);
console.log(x);
    var x = [];
    
    function() {    
    var text = document.getElementById("input").value;
    var message = document.getElementById("text-here");
    message.innerHTML += text + " " + "<br />" + "<br />";
      
      x.push(text);


  console.log(x);
}