%PDF- %PDF-
Direktori : /home/opti/workflow/node_modules/numeral/src/formats/ |
Current File : /home/opti/workflow/node_modules/numeral/src/formats/exponential.js |
// numeral.js format configuration // format : exponential // author : Adam Draper : https://github.com/adamwdraper (function (global, factory) { if (typeof define === 'function' && define.amd) { define(['../numeral'], factory); } else if (typeof module === 'object' && module.exports) { factory(require('../numeral')); } else { factory(global.numeral); } }(this, function (numeral) { numeral.register('format', 'exponential', { regexps: { format: /(e\+|e-)/, unformat: /(e\+|e-)/ }, format: function(value, format, roundingFunction) { var output, exponential = typeof value === 'number' && !numeral._.isNaN(value) ? value.toExponential() : '0e+0', parts = exponential.split('e'); format = format.replace(/e[\+|\-]{1}0/, ''); output = numeral._.numberToFormat(Number(parts[0]), format, roundingFunction); return output + 'e' + parts[1]; }, unformat: function(string) { var parts = numeral._.includes(string, 'e+') ? string.split('e+') : string.split('e-'), value = Number(parts[0]), power = Number(parts[1]); power = numeral._.includes(string, 'e-') ? power *= -1 : power; function cback(accum, curr, currI, O) { var corrFactor = numeral._.correctionFactor(accum, curr), num = (accum * corrFactor) * (curr * corrFactor) / (corrFactor * corrFactor); return num; } return numeral._.reduce([value, Math.pow(10, power)], cback, 1); } }); }));