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 Multiple Items with Arrays Iterating through an Array

Should I use a while instead?

Would a for loop or a while loop be better?

var temperatures = [100,99,90,80,70,65,30,10];
for (var i = 0; i < temperatures.lengh; i = 1); {
<!DOCTYPE html>
  <meta charset="utf-8">
  <title>JavaScript Loops</title>
<script src="script.js"></script>
Devin Thomas
Devin Thomas
2,935 Points

You did everything correct. You want your last statement to increment through each iteration and remove the semi-colon before the open bracket.

var temperatures = [100,90,99,80,70,65,30,10];

for(var i =0; i < temperatures.length; i++){

2 Answers

Owen McComas
Owen McComas
8,472 Points

You can use either and they will both work perfectly well. That being said, people tend to use for loops quite a bit more often than while loops or do-while loops in the real world. Looking at your for loop, there are a few minor things that will make it so it doesn't work.

  1. It looks like you just misspelled length in 'temperature.length'
  2. There shouldn't be a semi-colon at the end of the parenthesis there in the first part of the for-loop.
  3. You need to specify the iteration declaration. "i = 1" should be i++ or i += 1. This tells the loop to add 1 to the index value each loop.

Your for loop should look something like this.

var temperatures = [100,99,90,80,70,65,30,10];
for (var i = 0; i < temperatures.length; i++ ) {

Ok I see now, it's starting to come a little easier now