我想将数据从输入字段添加到一个新对象中,该对象是从构造函数创建的,并将其输出到浏览器中



首先,我想解决我的问题,但我还在学习关于JS的问题。我创建了名称的输入字段。现在,对于每个输入,我都希望能够从该字段与构造物分开创建一个新对象。然后,我希望能够将每个对象作为数组存储在一个变量中。之后,我也希望能够在浏览器中显示该数组中内部的每个对象。我创建了我要运行的函数以及在构造功能中,我还创建了一个空的数组,使用push((方法在数组中添加对象。稍后,我无法在数组中访问它,并可以在浏览器中显示。

var btn = document.getElementById("btn");
btn.onclick = function run() {
  var name = document.getElementById("name").value;
  function person(name) {
    this.name = name;
  };
  var somePerson = new person(name);
  var objArr = [];
  var all = objArr.push(somePerson);
};

现在我不知道这是否应该是应该的,但是如果有人可以帮助我并解释我在这种情况下犯的错误。

,因此您要遇到的问题是您的数组objArrall不是全局对象。它们仅存在于按钮的onclick功能中。另外,您不需要其中2个。

var btn = document.getElementById("btn");
var all = []; // global object
btn.onclick = function run() {
  var name = document.getElementById("name").value;
  function person(name) {
    this.name = name;
  };
  var somePerson = new person(name);
  // referencing the global object
  all.push(somePerson);
};

否则,您有一个很好的解决方案。

最新更新