Как вы программу написали, так она и работает. Почитайте статьи про JavaScript, что ли. Чтобы хотя бы не писать
for (i=1; i<100;i++){
setTimeout(function(){step(i)},1000);
}
Либо setTimeOut пропишите в саму функцию step, без всякого цикла, либо используйте setInterval().