Perfect setInterval

I want a piece of code to activate every 1000 milliseconds. However, when I check with getTimer() how many seconds actually pass between activating the function, i get a lot of 1000’s but also a lot of 1009’s and 1050’s. How can I rewrite my function here to get it perfect?


sitime = new Object();
setInterval(sitime, "interval", 1000);
sitime.interval = function() {
    box2._x+=1
    lasttime = marktime;
    marktime = getTimer();
    timepassed = marktime-lasttime;
    trace(timepassed);
    updateAfterEvent;
};