Sometimes the built in functionality for various Javascript primitives is not enough. Here is an assortment of useful Prototype functions. Enjoy!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
/** * Clean all non numeric characters. Also keeping "." * usage: str.cleanNumber() */ String.prototype.cleanNumber = function() { var returnValue = this.replace(/[^0-9.-]/g,''); //let's make sure we do not return a NaN value if(isNaN(returnValue) || returnValue == ""){ returnValue = 0; } return returnValue; } /** * Create a default string function to allow replacing all characters in a string */ String.prototype.replaceAll = function(search, replacement) { return this.replace(new RegExp(search, 'g'), replacement); }; /** * Format a float as currency * usage: floatvalue.formatMoney(0, '.', ','); */ Number.prototype.formatMoney = function(c, d, t){ var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "." : d, t = t == undefined ? "," : t, s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0; return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : ""); }; |