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

Patrick Franklin
Patrick Franklin
Full Stack JavaScript Techdegree Student 2,025 Points

nothin works for this ...

for ( i=2 ; i<25 ; i+=2 ) { console.log(i); }

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);


for(i = 2 ; i <= 25; i += 2 ){ console.log(i); }
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JavaScript Loops</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>

2 Answers

Tobias Trinkler
Tobias Trinkler
Full Stack JavaScript Techdegree Student 16,533 Points

Hi Patrick, you almost got it , but you forgot to declare the variable with the var keyword.

Furhtermore, you can see if you log out the loop to the console the last value is undefined as you are checking if the number is smaller or equal to 25 which is not possible since you are always increasing your counter by 2 and 25 is not an even number hence try <=24.

for(var i =2; i<= 24;i+=2){
  console.log(i)

}
Antti Lylander
Antti Lylander
9,659 Points

Well, it works just as well with i <=25 and passes the challenge. You will get the 'undefined' anyway even if you use i <= 24 or i <= 999 or if you change i += 2 to i += 1.

The 'undefined' on the last line in console means that the function is not defined to return anything.

Antti Lylander
Antti Lylander
9,659 Points

Your code is fine but you need to delete these lines:

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);