Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Перебор элементов массива (https://javascript.ru/forum/misc/78951-perebor-ehlementov-massiva.html)

Всемогущий 26.11.2019 16:46

Перебор элементов массива
 
Всем привет! При запуске этого кода в консоль выводится значение переменной score, но это значение выводится в консоль 1) много раз; 2) быстро увеличивающееся значение. Как сделать так чтобы в консоль выводилось 1,2,3, чтобы в итоге score было равно 3? :help:
var score = 0;
var arr = [1,2,3];
  function draw(){
       arr.forEach(function(item, i, arr) {
	    score+=1;
	    console.log(score);
       });
  }
 function init(){
     draw();
     requestAnimationFrame(init);
 }
 init();


Какие способы решения этой проблемы можете предложить ?
Мне нужно чтобы значение переменной score было равно 3,:agree: что надо изменить в функции draw, не трогая остальные функции?

рони 26.11.2019 17:01

Всемогущий,
:-? подожду переводчика.

Всемогущий 26.11.2019 17:09

Цитата:

Сообщение от рони (Сообщение 516244)
Всемогущий,
:-? подожду переводчика.

Что непонятно? вроде все понятно объяснил. Надо, чтобы score было равно 3, вызывая draw в init, чтобы только score вызывался 1 раз в функции draw.

Всемогущий 26.11.2019 17:12

Надо чтобы score, был равен 3, изменив, добавив что-то в функции draw.

рони 26.11.2019 17:28

Всемогущий,
var score = 0;
var arr = [1,2,3];
  function draw(){
	    score+=1;
	    console.log(score);
        if(score < arr.length) requestAnimationFrame(draw);
  }
 function init(){
     requestAnimationFrame(draw);
 }
 init();


Часовой пояс GMT +3, время: 08:57.