diff --git a/numberToWords.js b/numberToWords.js index 7642b1f..978e4a2 100644 --- a/numberToWords.js +++ b/numberToWords.js @@ -1,6 +1,6 @@ /*! * Number-To-Words util - * @version v1.2.2 + * @version v1.2.3 * @link https://github.com/marlun78/number-to-words * @author Martin Eneqvist (https://github.com/marlun78) * @contributors Aleksey Pilyugin (https://github.com/pilyugin) @@ -15,7 +15,9 @@ // ========== file: /src/isFinite.js ========== -var globalIsFinite = isFinite; +var globalIsFinite = isFinite || function(value) { + return value < Infinity && value > -Infinity; +}; var isFinite = Number.isFinite || function (value) { return typeof value === 'number' && globalIsFinite(value); }; diff --git a/numberToWords.min.js b/numberToWords.min.js index 99218df..539e3fd 100644 --- a/numberToWords.min.js +++ b/numberToWords.min.js @@ -1 +1 @@ -!function(){"use strict";function e(e){return h.test(e)||u.test(e)?e+"th":a.test(e)?e.replace(a,"ieth"):d.test(e)?e.replace(d,t):e}function t(e,t){return v[t]}function n(e){var t=parseInt(e,10);if(!s(t))throw new TypeError("Not a finite number: "+e+" ("+typeof e+")");var n=String(t),r=t%100,o=r>=11&&13>=r,i=n.charAt(n.length-1);return n+(o?"th":"1"===i?"st":"2"===i?"nd":"3"===i?"rd":"th")}function r(t,n){var r,i=parseInt(t,10);if(!s(i))throw new TypeError("Not a finite number: "+t+" ("+typeof t+")");return r=o(i),n?e(r):r}function o(e){var t,n,r=arguments[1];return 0===e?r?r.join(" ").replace(/,$/,""):"zero":(r||(r=[]),0>e&&(r.push("minus"),e=Math.abs(e)),20>e?(t=0,n=M[e]):y>e?(t=e%p,n=z[Math.floor(e/p)],t&&(n+="-"+M[t],t=0)):b>e?(t=e%y,n=o(Math.floor(e/y))+" hundred"):c>e?(t=e%b,n=o(Math.floor(e/b))+" thousand,"):g>e?(t=e%c,n=o(Math.floor(e/c))+" million,"):m>e?(t=e%g,n=o(Math.floor(e/g))+" billion,"):w>e?(t=e%m,n=o(Math.floor(e/m))+" trillion,"):x>=e&&(t=e%w,n=o(Math.floor(e/w))+" quadrillion,"),r.push(n),o(t,r))}function i(t){var n=r(t);return e(n)}var f="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||this,l=s,s=Number.isFinite||function(e){return"number"==typeof e&&l(e)},h=/(hundred|thousand|(m|b|tr|quadr)illion)$/,u=/teen$/,a=/y$/,d=/(zero|one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve)$/,v={zero:"zeroth",one:"first",two:"second",three:"third",four:"fourth",five:"fifth",six:"sixth",seven:"seventh",eight:"eighth",nine:"ninth",ten:"tenth",eleven:"eleventh",twelve:"twelfth"},p=10,y=100,b=1e3,c=1e6,g=1e9,m=1e12,w=1e15,x=9007199254740992,M=["zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"],z=["zero","ten","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"],$={toOrdinal:n,toWords:r,toWordsOrdinal:i};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=$),exports.numberToWords=$):f.numberToWords=$}(); \ No newline at end of file +!function(){"use strict";function e(e){return s.test(e)||u.test(e)?e+"th":a.test(e)?e.replace(a,"ieth"):d.test(e)?e.replace(d,t):e}function t(e,t){return v[t]}function n(e){var t=parseInt(e,10);if(!h(t))throw new TypeError("Not a finite number: "+e+" ("+typeof e+")");var n=String(t),r=t%100,o=r>=11&&13>=r,i=n.charAt(n.length-1);return n+(o?"th":"1"===i?"st":"2"===i?"nd":"3"===i?"rd":"th")}function r(t,n){var r,i=parseInt(t,10);if(!h(i))throw new TypeError("Not a finite number: "+t+" ("+typeof t+")");return r=o(i),n?e(r):r}function o(e){var t,n,r=arguments[1];return 0===e?r?r.join(" ").replace(/,$/,""):"zero":(r||(r=[]),0>e&&(r.push("minus"),e=Math.abs(e)),20>e?(t=0,n=M[e]):y>e?(t=e%p,n=z[Math.floor(e/p)],t&&(n+="-"+M[t],t=0)):c>e?(t=e%y,n=o(Math.floor(e/y))+" hundred"):b>e?(t=e%c,n=o(Math.floor(e/c))+" thousand,"):g>e?(t=e%b,n=o(Math.floor(e/b))+" million,"):m>e?(t=e%g,n=o(Math.floor(e/g))+" billion,"):w>e?(t=e%m,n=o(Math.floor(e/m))+" trillion,"):x>=e&&(t=e%w,n=o(Math.floor(e/w))+" quadrillion,"),r.push(n),o(t,r))}function i(t){var n=r(t);return e(n)}var f="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||this,l=h||function(e){return 1/0>e&&e>-(1/0)},h=Number.isFinite||function(e){return"number"==typeof e&&l(e)},s=/(hundred|thousand|(m|b|tr|quadr)illion)$/,u=/teen$/,a=/y$/,d=/(zero|one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve)$/,v={zero:"zeroth",one:"first",two:"second",three:"third",four:"fourth",five:"fifth",six:"sixth",seven:"seventh",eight:"eighth",nine:"ninth",ten:"tenth",eleven:"eleventh",twelve:"twelfth"},p=10,y=100,c=1e3,b=1e6,g=1e9,m=1e12,w=1e15,x=9007199254740992,M=["zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"],z=["zero","ten","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"],$={toOrdinal:n,toWords:r,toWordsOrdinal:i};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=$),exports.numberToWords=$):f.numberToWords=$}(); \ No newline at end of file diff --git a/package.json b/package.json index c642294..faae071 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "number-to-words", "description": "Contains some util methods for converting numbers into words, ordinal words and ordinal numbers.", - "version": "1.2.2", + "version": "1.2.3", "main": "./src", "browser": "./numberToWords.min.js", "author": "Martin Eneqvist (https://github.com/marlun78)", diff --git a/src/isFinite.js b/src/isFinite.js index b80bdf3..ca50316 100644 --- a/src/isFinite.js +++ b/src/isFinite.js @@ -1,6 +1,8 @@ 'use strict'; -var globalIsFinite = isFinite; +var globalIsFinite = isFinite || function(value) { + return value < Infinity && value > -Infinity; +}; var isFinite = Number.isFinite || function (value) { return typeof value === 'number' && globalIsFinite(value); };