JSFiddle - React, Tailwind, and code Playground

HTML

<div id="text"></div>

JavaScript

var input = 'Hello world',
	inputIndexes = [],
	output = [];

for (var i = 0; i < input.length; i++) { 
	inputIndexes[i] = i;
};

function addAnElement() {
	if (inputIndexes.length) {
		var rand = Math.floor(Math.random() * inputIndexes.length);
		var element = inputIndexes.splice(rand, 1);
		output[element] = input[element];
		//console.log(output.join(' '));
    document.getElementById('text').innerHTML = output.join(' ');
		setTimeout(addAnElement, 2000);

	}
}

addAnElement();