2013-04-09 3 views
0

Я застрял здесь. На моей веб-странице есть абзац с id="history", и мне нужна функция для прокрутки myArray, и если myArray[i] соответствует, например, 10, как показано ниже, сделайте что-нибудь. Пожалуйста, не предлагайте jQuery, как я узнаю об этом позже.петля через пустой массив, заполненный методом «push»

var myArray = []; 

    function myFunction(){ 
     // do something 
     myArray.push(8); 
     myArray.push(10); 
    } 

    function myOtherFunction(){ 
     document.getElementById('history').innerHTML = myArray; 
    } 


    function myAnotherFunction(){ 
     for (var i = 0; i<=myArray.length; i++){ 
     if (myArray[i] === 10){ 
      //do something 
     } 
     } 
    } 
+5

Ваша верхняя граница в петле отключена на единицу. –

+0

Что делать, если элемент массива действительно равен 10? –

+0

Код выглядит хорошо. В чем проблема? – freakish

ответ

0

Код выглядит хорошо для меня, кроме того, что у вас есть логическая ошибка в коде. Индекс не привязан к массиву в цикле. See this fiddle может быть вам полезна.

var myArray = []; 

    function myFunction(){ 
     // do something 
     myArray.push(8); 
     myArray.push(10); 
    } 

    function myOtherFunction(){ 
     document.getElementById('history').innerHTML = myArray; 
    } 


    function myAnotherFunction(){ 
     for (var i = 0; i<myArray.length; i++){ 
     if (myArray[i] == 10){ 
      myOtherFunction(); 
      //do something 
     } 
     } 
    } 
myFunction(); 
myAnotherFunction(); 
+0

Спасибо, ребята, но у меня все еще проблемы. Поэтому я загрузил свой фактический код (немного лишился :) http://jsfiddle.net/3vJH6/1/ – user2261455

+0

Я проверил ваш код. что вы собираетесь делать с этим кодом? В чем проблема –