Skip to content

Instantly share code, notes, and snippets.

@wcoder
Created April 13, 2014 20:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save wcoder/10601500 to your computer and use it in GitHub Desktop.
Save wcoder/10601500 to your computer and use it in GitHub Desktop.
Class for mixing
/**
* Class for mixing
*
* Use:
* var input = document.querySelector('#input').innerText;
* var output = Mixer.shuffleString(input);
*/
(function(w) {
var mixer = {};
w.Mixer = mixer;
/**
* @param {string} string String for shuffle
* @return {string} Shuffled string
*/
mixer.shuffleString = function(string) {
var text = string.split('');
return mixer.shuffleArraySort(text).join('');
};
/**
* @param {array} array The array for shuffle
* @return {array} Shuffled array
*/
mixer.shuffleArraySort = function (array) {
for (var j, x, i = array.length; i; j = parseInt(Math.random() * i),
x = array[--i],
array[i] = array[j],
array[j] = x);
return array;
};
})(window);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment