2013-06-06 7 views
0

Я не могу понять, почему это происходит только через массив один раз в JavaScript. Он также должен регистрировать второй вложенный массив.Почему этот цикл работает только один раз

JSFiddle ниже и код ниже;

http://jsfiddle.net/HJfbT/

b = [["one", "is"], 
["two", "is"]]; 

for (var i = 0; i < b.length; i++) { 
    for (var x = 0; x < b[x].length; x++) { 
     console.log(b[i][x]); 
    } 
} 

ответ

4

Потому что у вас есть опечатка:

// --- should be i ---v 
for (var x = 0; x < b[x].length; x++) { 

DEMO:http://jsfiddle.net/HJfbT/1/

+0

@VisionN это нормально, чтобы дать jsfiddle ссылки в ответах ?, возможно, ссылка сломана ...? – pinkpanther

+0

@pinkpanther Это отлично работает для меня. – VisioN

+0

что делать, если ссылка не работает в будущем? – pinkpanther

0

Я думаю, это потому, что внутренний цикл имеет рабочее состояние с ошибкой.

Is:

for (var x = 0; x < b[x].length; x++) 

но должны быть:

for (var x = 0; x < b[i].length; x++) 
Смежные вопросы