Scramble
by Ryan Perez
HTML
<p>The generated words are anagrams (mixed letters) of the original word, but our brain has no trouble in giving them a meaning.
The principle is identical with some typographical or spelling errors for which the brain adapts without problems.</p>
JavaScript
var text = document.body.innerText;
var words = text.split(" ");
var scrambled = "";
for (var i = 0; i < words.length; i++) {
var word = words[i];
var letters = word.split("");
var first = letters[0];
var last = letters[letters.length - 1];
for (var j = 1; j < letters.length - 1; j++) {
var letter = letters[j];
var index = Math.floor(Math.random() * (letters.length - 2)) + 1;
var temp = letters[index];
letters[index] = letter;
letters[j] = temp;
}
letters[0] = first;
letters[letters.length - 1] = last;
scrambled += letters.join("") + " ";
}
document.body.innerText = scrambled;