Esta técnica lleva usándose décadas para ejecutar tareas "infinitas" en javascript; por ejemplo, para lo que yo más uso, videojuegos.
Crear un bucle infinito sin apropiarse de la CPU el 100% del tiempo (lo que mataría al nevagado) es muy sencillo: Usa un intervalo. Por ejemplo:
Código Javascript
:
Ver originalfunction ejemplo(){
console.log("codigo magico");
setTimeout(function() { ejemplo(); }, 100);
}
ejemplo();
Según la necesidad que tengas, puedes meterle mas tiempo al timeout, o dejarlo en menos. Aunque cuidado con dejarlo muy corto, pues podrías matar a CPU's menos potentes.
Y ésto es todo, una tontería trivial que al parecer no todo el mundo conoce.