Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

JavaScript JavaScript Loops, Arrays and Objects Tracking Data Using Objects The Student Record Search Challenge

Erwan EL
Erwan EL
7,669 Points

Why this loop doesn't loop?

var students = [ 
  { 
   name: 'Dave',
    track: 'Front End Development',
    achievements: '158',
    points: '14730'
  },
  {
    name: 'Jody',
    track: 'iOS Development with Swift',
    achievements: '175',
    points: '16375'
  },
  {
    name: 'Jordan',
    track: 'PHP Development',
    achievements: '55',
    points: '2025'
  },
  {
    name: 'John',
    track: 'Learn WordPress',
    achievements: '40',
    points: '1950'
  },
  {
    name: 'Trish',
    track: 'Rails Development',
    achievements: '5',
    points: '350'
  }
];


var message = '';
var student;

function print(message) {
  var outputDiv = document.getElementById('output');
  outputDiv.innerHTML = message;
}



for (var i = 0; i < students.length; i += 1) {
    student = students[i];
        print(students[i].name);

}

Why does this only print Trish that is the last name of students?

2 Answers

Tsenko Aleksiev
Tsenko Aleksiev
3,818 Points

I don't see studentS defined anywhere, can you please add all the code. Use the Markdown Cheatsheet ( see below this box ) to see how to add the code snippet.

Tsenko Aleksiev
Tsenko Aleksiev
3,818 Points

Well, I think here's the problem:

for (var i = 0; i < students.length; i += 1) {
    student = students[i];
        print(students[i].name);

}

it should be:

print(student.name);

Try it and give me a feedback if it works