如何在Javascript中列出对象数组?

3

我有两个person对象:

var p1 = {firstName:"John", lastName:"Doe", age:46};
var p2 = {firstName:"Joanne", lastName:"Doe", age:43};

我该如何将这些对象添加到persons数组中并通过索引访问它?

我所知道的只是初始化persons

var persons = [
    {firstName:"John", lastName:"Doe", age:46},
    {firstName:"Joanne", lastName:"Doe", age:43}
];

var persons = [p1, p2] - Yury Tarabanko
5个回答

7
创建一个人员数组:
var persons = []; // initialize the array

persons.push({firstName:"John", lastName:"Doe", age:46}); // Add an object

persons.push({firstName:"Joanne", lastName:"Doe", age:43}); // Add another object

要检索特定索引处的值:

persons[1].firstName // "Joanne"
persons[1].lastName  // "Doe"
persons[1].age       // 43

要遍历数组,请使用for循环或任何类型的循环:

for (var i = 0; i < persons.length; i++) {
    console.log( persons[i].firstName ); // writes first names to console
}

1

我刚在这里找到了语法:http://www.w3schools.com/js/tryit.asp?filename=tryjs_array_object - Shift 'n Tab
@ShiftN'Tab - 你的代码正在创建一个数组,并将两个对象插入到其中。我仍然不明白问题在哪里。 - Quentin
@ShiftN'Tab - 非常好。我仍然不明白你遇到了什么问题。 - Quentin
我想将HTML表格数据转换为JS数组,但在foreach循环内初始化数据时遇到了麻烦,所以使用push方法非常好! - Shift 'n Tab
什么是foreach循环?问题中没有foreach循环! - Quentin
显示剩余4条评论

1
你可以使用 push 方法添加每个对象。
遍历数组,对于每个对象都执行 persons.push(object)

1
遍历这些人的数组的另一种方法是:
const people = persons.map((person, i) => {
  console.log(persons[i].firstName)
});

-1
你可以使用push方法 它会将对象添加到数组的末尾。
看例子:

<script>
var per1 ={firstName:"John", lastName:"Doe", age:46};
var per2 ={firstName:"Johny", lastName:"Doe", age:50};
var persons = [per1,per2];

var per3 ={firstName:"Johnonon", lastName:"Doe", age:52};
persons.push(per3);

</script>


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接