Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.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,所以我现在使用js制作一个地址簿。这是codecademy的一个练习。我现在正试图编写一个列出所有用户的函数。以下是我到目前为止的情况: var bob = { firstName: "Bob", lastName: "Jones", phoneNumber: "(650) 777-7777", email: "bob.jones@example.com" }; var mary = { firstName: "Mary", lastName:

所以我现在使用js制作一个地址簿。这是codecademy的一个练习。我现在正试图编写一个列出所有用户的函数。以下是我到目前为止的情况:

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);
}
这就是让我痛苦的原因。我得到的错误是“SyntaxError:意外的关键字'for'。我知道它似乎有点不完整,但不知道如何修复它。有什么想法吗

var list = function () {
  var contactsLength = 
  for (var i = 0; i < contacts.length; i++);
    printPerson();
}
list();
var list=函数(){
var触点长度=
对于(var i=0;i
该行导致您的语法错误

我猜你想要:

var contactsLength = contacts.length;
for (var i = 0; i < contactsLength; i++) {
    printPerson();
}
var contactsLength=contacts.length;
对于(var i=0;i<触点长度;i++){
printPerson();
}

注意您的循环也缺少一个结束括号。

您有几个问题。其中一个问题已经指出(缺少
联系人长度的分配);不过如果您查看我的第二段代码,实际上不需要这样做

另一个不太明显-您需要将person传递给
printPerson()
方法。您的
printPerson()
方法有一个参数
person
。这需要传递

因此,请将代码更改为:

var list = function () {
  var contactsLength = contacts.length;
  for (var i = 0; i < contactsLength; i++)
    // You need to pass in the person to print!
    // contacts[i] is going to fetch the person in the list at position i
    printPerson(contacts[i]); 
}
list();

查看
循环前的行。
var contactsLength=
应该是
var contactsLength=contacts.length;
不确定人们为什么会投反对票-对我来说似乎是一个很好的问题。已经尝试了很多代码,这是一个很好的问题。做得好,欢迎。忽略那些没有理由投反对票的人。我不知道我知道是谁想出了这些电话号码,但据我所知,这些号码是真实的,我没有打电话给他们。650-777-7777是a出租车服务(黄色出租车)在米尔布雷,CA 94030和650-888-8888纯属巧合?-这是加利福尼亚州福斯特市一家苹果店的号码,邮编94401。因此,如果您选择了该号码,请使用美国官方的号码:555-01xx,就像您使用example.com作为URL的占位符一样。持有这些号码的人可能会心存感激。”您的循环也缺少一个结束括号。“实际上没有,因为
for
循环没有开始括号。问题是
for
循环是空的。请删除行末尾的
(以及
}
)它会好起来的。@FelixKling噢,看看这个。正在更新。
头的
后面的尾随
也不正确。很好。删除了它。
var list = function () {
  var contactsLength = contacts.length;
  for (var i = 0; i < contactsLength; i++)
    // You need to pass in the person to print!
    // contacts[i] is going to fetch the person in the list at position i
    printPerson(contacts[i]); 
}
list();
var list = function () {
  for (var i = 0; i < contacts.length; i++)
    printPerson(contacts[i]); // You need to pass in the person to print!
}
list();