Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Increment integer by 1; every 1 second

My aim is to create identify a piece of code that increments a number by 1, every 1 second:

We shall call our base number indexVariable, I then want to: indexVariable = indexVariable + 1 every 1 second; until my indexVariable has reached 360 - then I wish it to reset to 1 and carry out the loop again.

How would this be possible in Javascript? - if it makes a difference I am using the Raphael framework.

I have carried out research of JavaScript timing events and the Raphael delay function - but these do not seem to be the answer - can anyone assist?

like image 855
JHarley1 Avatar asked May 14 '12 15:05

JHarley1


2 Answers

You can use setInterval() for that reason.

var i = 1;

var interval = setInterval( increment, 1000);

function increment(){
    i = i % 360 + 1;
}

edit: the code for your your followup-question:

var interval = setInterval( rotate, 1000);

function rotate(){
      percentArrow.rotate(1,150,150);
}

I'm not entirely sure, how your rotate works, but you may have to store the degrees in a var and increment those var too like in the example above.

like image 64
Christoph Avatar answered Sep 21 '22 01:09

Christoph


var indexVariable = 0;
setInterval(function () {
    indexVariable = ++indexVariable % 360 + 1; // SET { 1-360 }
}, 1000);
like image 25
Joe Avatar answered Sep 20 '22 01:09

Joe