UNPKG

table-tennis-scoring

Version:

A league and fixture generator for table tennis

30 lines (23 loc) 729 B
var tablesort = require("tablesort"); function cleanNumber (i) { return i.replace(/[^\-?0-9.]/g, ""); } function compareNumber (a, b) { a = parseFloat(a); b = parseFloat(b); a = isNaN(a) ? 0 : a; b = isNaN(b) ? 0 : b; return a - b; } tablesort.extend("number", function (item) { return item.match(/^-?[£\x24Û¢´€]?\d+\s*([,\.]\d{0,2})/) || // Prefixed currency item.match(/^-?\d+\s*([,\.]\d{0,2})?[£\x24Û¢´€]/) || // Suffixed currency item.match(/^-?(\d)*-?([,\.]){0,1}-?(\d)+([E,e][\-+][\d]+)?%?$/); // Number }, function(a, b) { a = cleanNumber(a); b = cleanNumber(b); return compareNumber(b, a); }); tablesort(document.getElementById("standings"), { descending: true });