我有一个我正在工作的项目,项目的一部分要求它使用一组对象。我理解数组是什么,也理解如何创建一个对象。我创建了一个名为student的新对象,其中包含姓名,成绩和学生ID的属性。这些对象propperites中的每一个都将由用户在输入文本字段中生成。我有一个按钮,用于将每个条目保存到一个数组中,但不理解如何将我的学生对象合并到我的数组中,或者不能正确理解对象数组对于该项目的要求。我已经将它设置为使用并行数组并注释掉行以添加我的新学生对象和新学生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>
答案 0 :(得分:1)
在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});
这将允许我们从文本输入中获取值并将其推送到我们的对象。