I'm not stuck but my code gives me outcome I'm not sure where it's coming from


#1

Every time I run my code, except the output I expect, I also get "undefined". I'm pretty sure it comes from function printPerson() or list() but how does it get that "undefined" is what I don't know. As an example, using search("Jones"); I receive
Bob Jones
undefined


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.length;
	for (var i = 0; i < contactsLength; i++) {
		printPerson(contacts[i]);
	}
}

/*Create a search function
then call it passing "Jones"*/
function search(lastName) {
    var contactsLength = contacts.length;
    for (var i = 0; i < contactsLength; i++) {
		if (contacts[i].lastName == lastName) {
		    console.log(printPerson(contacts[i]));
		}
	}
}

search("Jones");


#2

a function returns undefined by default, nothing to worry about.


#3

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.