javascript 如何创建对象数组

标签 javascript arrays javascript-objects

我正在处理一个项目,该项目的一部分要求它使用一组对象。我了解什么是数组,也了解如何创建对象。我创建了一个名为学生的新对象,其属性包括姓名、年级和学生 ID。这些对象属性中的每一个都将由用户在输入文本字段中生成。我有一个按钮,用于将每个条目保存到数组中,但不了解如何将学生对象合并到数组中,或者不正确理解对象数组是什么,这是该项目的要求。我已经将其设置为使用并行数组,并注释掉了行以添加新的学生对象和新的学生 ID 输入字段,但现在我陷入困境。我对其进行了研究,但没有获得完成此任务所需的信息,或者不是很清楚。这是我到目前为止所拥有的

<br>
<p><b>Student Name:</b></p>
<input id="inp" type="text">
<br>
<br>
<p><b>Grade:</b></p>
<input id="inps" type="text">
<br>
<br>
<p><b>Student ID:</b></p>
<input id="inpsid" type="text">
<br>
<br>
<button type="button" onclick="enter()">Enter</button>
<br>
<br>
<button type="button" onclick="construct()">Constructor</button>
<p>Student Names List:</p>
<p id="iop"></p>
<br>
<p id="opo"></p>
<br>
<p id="hop"></p>
<br>
<p id="lop"></p>
<br>
<p id="aop"></p>
<br>
<p id="cop"></p>
<br>
<script>

    var studentArr = new Array();
    var scoreArr = new Array();

    function enter() {

        var student = {
        name : document.getElementById("inp").value,
        grade : "A",
        id : 001
        };

        // Just to test my object property is saving input correctly.
        document.getElementById("iop").innerHTML = student.name;

        studentArr.push(student.name);

        var stuval = "";

        for(i=0; i < studentArr.length; i++)
        {
            stuval = stuval + studentArr[i] + "<br/>";
        }

        }

  </script>

最佳答案

在 JS 中创建对象数组非常简单。它可以像这样完成:

var objs = [{name:"fname",dob:"1/17/1999"},{name:
"guy",dob:"2/14/1962"}];

我们还可以将对象推送到数组,如下所示:

objs.push({name:"new name", dob:"4/26/1987"});

要从用户输入中收集对象属性值,我们可以这样做。

var input = document.getElementById("inp").value;

objs.push({name:input,grade:80, sid:001});

这将允许我们从文本输入中获取值并将其推送到我们的对象。

关于javascript 如何创建对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43580216/

相关文章:

javascript - 根据另一个数组的空元素从一个数组中删除元素

javascript - JQuery Mobile 1.4.5 似乎没有在 ipad 上调用 javascript

javascript - jQuery 效果运行流畅,但有时会变得不稳定 - 为什么?

C 字符串大小和数组

java - 移动数组

python - 如何在 python 中将 2D 数组 reshape 为 1D 数组?

javascript - 为什么直接在 function 上添加方法不能像 function.prototype 那样工作?

javascript - 按值比较数组中的所有对象

javascript - Angular 应用程序没有渲染任何内容

javascript - Style Jquery dialog content div 背景混合在对话框中