Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的JavaScript代码正在工作,但我有错误。_Javascript - Fatal编程技术网

我的JavaScript代码正在工作,但我有错误。

我的JavaScript代码正在工作,但我有错误。,javascript,Javascript,以下是我正在做的练习: 您可以在链接中看到所有要求,但基本上它希望我打印联系人信息,例如我们有Bob和Mary 我使用的代码工作正常,但出现以下错误“哦,再试一次。看起来您的列表函数没有console.log“Bob Jones”。您是否记得在创建列表()后调用它?” 关于Bob的信息打印出来了(你可以试试代码),我仍然有错误 这是我的密码: var bob = { firstName: "Bob", lastName: "Jones", phoneNumber:

以下是我正在做的练习:

您可以在链接中看到所有要求,但基本上它希望我打印联系人信息,例如我们有Bob和Mary

我使用的代码工作正常,但出现以下错误“哦,再试一次。看起来您的列表函数没有console.log“Bob Jones”。您是否记得在创建列表()后调用它?”

关于Bob的信息打印出来了(你可以试试代码),我仍然有错误

这是我的密码:

    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];

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

function list(){
        var contactsLength = contacts;
        for(var i; i<contacts.length ; i++){
                printPerson(i);
            }
    }

    console.log(contacts);
var-bob={
名字:“鲍勃”,
姓:“琼斯”,
电话号码:“(650)777-7777”,
电子邮件:“鲍勃。jones@example.com"
};
变量玛丽={
名字:“玛丽”,
姓:“约翰逊”,
电话号码:“(650)888-8888”,
电子邮件:“玛丽。johnson@example.com"
};
变量联系人=[bob,mary];
功能打印人员(个人){
console.log(person.firstName+“”+person.lastName);
}
函数列表(){
var触点长度=触点;
对于(var i;iHmmm)

改为

 printPerson(contacts[i]);
var i = 0;
也在for循环中

var i;
改为

 printPerson(contacts[i]);
var i = 0;

最后,谁在调用列表函数?

您没有正确初始化数组的长度

var contactsLength = contacts;
应该是

var contactsLength = contacts.length;

printPerson(i);
应该是

printPerson(contacts[i]);
i是一个整数变量。在
contacts[x]
中使用它将在数组
contacts
的索引中获取对象

它会将数组大小传递给可在循环中使用的
contactsLength
字段。 但要运行代码,必须在加载时调用
list()
-函数

 window.addEventListener('load', function () {
    list();
 });

所以你的问题是,我的错误在哪里?好了,两个答案,我在评论中问的问题,另一个人在呼叫列表()上回答的问题,这对他们来说是一个很好的建议。我喜欢你的windows listener,这家伙并不真的需要联系人,但他从未使用过它:)请参阅KarelG在呼叫列表上的回答,顺便说一下,您不需要contactLength变量,如前所述。