gpt4 book ai didi

javascript - 在控制台中打印数组对象

转载 作者:行者123 更新时间:2023-11-28 12:43:53 24 4
gpt4 key购买 nike

您好,我一直在尝试使用 codeacademy.com 学习 Javascript,但我已经完成了一个练习,但我写这个练习的原因似乎没有任何意义。这是我的代码:

 (function(){
var bob = {
firstName: "Bob",
lastName: "Jones",

phoneNumber: "(650) 777 - 7777",
email: "bob.jones@example.com"
};

var mary = {
firstName: "Mary",
lastName: "Johnson",

phoneNumber: "(650) 888 - 8888",
email: "mary.johnson@example.com"
};

var contacts = [bob, mary];

var printPerson = function(person){
console.log(person.firstName + " " + person.lastName);
}

var list = function(){
var i = contacts.length;
for(var j= 0; j < i ; j++){
printPerson(contacts[i]);
}
};

list();
})();

问题出在列表函数中,当我尝试调用 printPerson() 函数时,我得到那个人未定义,但如果我写而不是 list() 函数:

    printPerson(contacts[0]);
printPerson(contacts[1]);

一切正常。我在 list() 函数中做错了什么,它不起作用?

最佳答案

var list = function(){
var i = contacts.length;
for(var j= 0; j < i ; j++){
printPerson(contacts[i]);
}
};

i 这里是一个常量。如果更换它:

var list = function(){
var i = contacts.length;
for(var j= 0; j < contacts.length ; j++){
printPerson(contacts[contacts.length]);
}
};

对于所有数组arrarr[arr.length]将始终是未定义的。您可能需要contacts[j]

关于javascript - 在控制台中打印数组对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10047683/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com