map and shuffle

by andrew rowe

HTML

<table>
    <tr>
        <td>Apple</td>
        <td>Mango</td>
        <td>Orange</td>
        <td>Grapes</td>
    </tr>
</table>
<ul id='log'></ul>

JavaScript

var tds = $('table tr td');

//+ Jonas Raoni Soares Silva
//@ http://jsfromhell.com/array/shuffle [v1.0]
function shuffle(o) { //v1.0
    for (var j, x, i = o.length; i; j = Math.floor(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
    return o;
};
$('#log').append(tds);
tds = shuffle(tds);
$('#log').append(tds);
tds = $.map(tds, function (a) {
    return $(a).html($(a).html() + ' ' + Math.floor(Math.random()*tds.length));
});
$('table tr').html(tds);