pbojinov
2/7/2013 - 8:24 PM

Shuffle string

Shuffle string

/**
 * Shuffle string like crazy
 * 
 * @param {int} length desired
 * @return {string} the shuffled string
 */
String.prototype.shuffle = function(size) {
    var arr = this.split('');
    for(var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x){};
    arr = arr.join('');
    return size ? arr.substr(0, Math.min(size, arr.length-1)) : arr;
};