2015-05-17 21 views
-3

В нормальном цикле:Почему «for (i = 0; i == x; i ++)» возвращает undefined?

var x = 2 
for (i=0;i<x;i++) { 
console.log(i) 
} 

который возвращает

0 
1 

Однако, почему

var x = 2 
for (i=0;i==x;i++) { 
console.log(i) 
} 

возвращает

undefined 
+3

'i' никогда не равен' x', поэтому процедура цикла не выполняется – dandavis

+2

Вопрос в том, зачем ему вообще что-то возвращать, журнал никогда не должен происходить? – adeneo

+0

@adeneo: если вставить в консоль и запустить, он скажет «undefined» (хвост void loop) – dandavis

ответ

2

Что dandavis сказал в комментариях я ваш ответ. Когда браузер смотрит на цикл for, он говорит «ОК», i = 0. Затем, когда он видит i == x (выполнить if i == x), он идет, ну, это не так (0! = 2), поэтому он не выполняет цикл.

Смежные вопросы