Skip to content

Instantly share code, notes, and snippets.

@ryasmi
Last active March 8, 2016 09:16
Show Gist options
  • Save ryasmi/707ff2fbf9c2cced97f3 to your computer and use it in GitHub Desktop.
Save ryasmi/707ff2fbf9c2cced97f3 to your computer and use it in GitHub Desktop.
!function () {
var parseNum = function (elem) {
return parseInt(elem.innerText.replace('$', '').replace(',', ''))
};
var attrs = $('#squad > thead > tr > th').length;
var player_elems = $('#squad > tbody > tr.highlighted').toArray();
if (player_elems.length == 0) {
player_elems = $('#squad > tbody > tr').toArray();
}
var players = player_elems.map(function (elem) {
var children = $(elem).children().toArray();
return {
wage: parseNum(children[attrs - 2]),
rating: parseNum(children[attrs - 1]),
age: parseNum(children[1])
};
});
var sum = function (attr) {
return function (sum, player) {
return sum + player[attr];
};
};
var total_wage = players.reduce(sum('wage'), 0);
var total_rating = players.reduce(sum('rating'), 0);
var total_age = players.reduce(sum('age'), 0);
var total_players = players.length
var avg_wage = total_wage / total_players;
var avg_rating = total_rating / total_players;
var avg_age = total_age / total_players;
var rating_per_wage = total_rating / total_wage;
var rating_per_age = total_rating / total_age;
var wage_per_age = total_wage / total_age;
alert(
'Total Wage = $' + total_wage + '\n' +
'Total Rating = ' + total_rating + '\n' +
'Total Players = ' + total_players + '\n' +
'Average Wage = $' + avg_wage + '\n' +
'Average Rating = ' + avg_rating + '\n' +
'Average Age = ' + avg_age + '\n' +
'Rating/Wage = ' + rating_per_wage + '\n' +
'Rating/Age = ' + rating_per_age + '\n' +
'Wage/Age = ' + wage_per_age + '\n'
);
}();
javascript:!function(){var e=function(e){return parseInt(e.innerText.replace("$","").replace(",",""))},a=$("#squad > thead > tr > th").length,n=$("#squad > tbody > tr.highlighted").toArray();0==n.length&&(n=$("#squad > tbody > tr").toArray());var r=n.map(function(n){var r=$(n).children().toArray();return{wage:e(r[a-2]),rating:e(r[a-1]),age:e(r[1])}}),t=function(e){return function(a,n){return a+n[e]}},g=r.reduce(t("wage"),0),i=r.reduce(t("rating"),0),u=r.reduce(t("age"),0),o=r.length,l=g/o,c=i/o,d=u/o,h=i/g,A=i/u,v=g/u;alert("Total Wage = $"+g+"\nTotal Rating = "+i+"\nTotal Players = "+o+"\nAverage Wage = $"+l+"\nAverage Rating = "+c+"\nAverage Age = "+d+"\nRating/Wage = "+h+"\nRating/Age = "+A+"\nWage/Age = "+v+"\n")}();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment