Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript Loops, Arrays and Objects Simplify Repetitive Tasks with Loops Refactor Using a Loop

Nicole Solis
Nicole Solis
14,469 Points

Refactoring Javascript

This is probably really silly but I'm just looking at this code and having absolutely no clue. I'm going back over the videos now but any help would be appreciated.

script.js
console.log(2);
console.log(4);
console.log(6);
console.log(8);
console.log(10);
console.log(12);
console.log(14);
console.log(16);
console.log(18);
console.log(20);
console.log(22);
console.log(24);
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JavaScript Loops</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>

Semantically

i = 2 while i < 25 console.log(i) add 2 to i end

this will do the same thing as all those console logs while reducing your code immeasurably. (If you use 24 instead of 25, your last print of 24 won't get printed, conversely you could do the add at the beginning, start with i=0 instead and then <24 will work)

1 Answer

William Li
PLUS
William Li
Courses Plus Student 26,868 Points

You can use a for loop to do that

for(var i=2; i<=24; i+=2) {
  console.log(i);
}
Nicole Solis
Nicole Solis
14,469 Points

Aside from document.write(console.log(i)), this is exactly what I ended up with. The explanation from John Magee helped a ton and your code put the bow on the package :) Thanks!