You should pass a reference to the requestAnimationFrame function, and not call the function:
requestAnimationFrame(this.render);
Since you are using this inside render , you probably need bind :
requestAnimationFrame(this.render.bind(this));
Your version causes a stack overflow (the function calls itself synchronously until the call stack is full).
source share