Code extention with limit(1000) - next() and has next() function to get all database entries and display on repeater

Has anyone tried putting subsequent .next calls in a recursively-called function?
I tried this with non-async calls. Seems to work, but I suspect it is poor form. Here goes anyway :

__ // declare a global var for results

__ // fetch first batch of results
.then(results => {recursiveCall(results)}); // (Pass the promise to the function, not the items.)

export function recursiveCall(pwomith) {

__  // Add pwomith.items to global variable 
if (pwomith.hasNext()) { 
	pwomith.next() 
	.then(results => {recursiveCall(results)}); 
	} 
else 
	{  __  } // populate the elements from the global variable  

}

Fascinated you are using over 1000 items in a repeater though! Best of luck.

Chas