UNPKG

chartx

Version:

Data Visualization Chart Library

56 lines (53 loc) 1.6 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _numeral = _interopRequireDefault(require("numeral")); /* * 公共数据格式化处理 */ // import Magix from 'magix' var empty = '--'; /** * 检查n是否为合法的Number,并且执行callback,否则执行nanCallback或者直接返回empty * @param n * @param callback * @param nanCallback * @returns */ var checkN = function checkN(n) { var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (n, originN) {}; var originN = n; if (n === null || n === undefined || n === '') { return empty; } n = n.toString().replace(/,/g, ''); //n可能是带千分位,的str if (isNaN(+n)) { return empty; } return callback(+n || 0, originN); }; var _default = exports.default = { formatPer: function formatPer(n, p) { return checkN(n, function (n) { p = p + '' === '0' ? 0 : +p || 2; var val = (0, _numeral.default)(n * 100).format('0,0.'.padEnd(4 + p, '0')); //.format('0,0.00') return val + '%'; }); }, formatInt: function formatInt(n) { return checkN(n, function (n) { var val = (0, _numeral.default)(Math.round(n)).format('0,0'); return val; }); }, formatFloat: function formatFloat(n, p) { return checkN(n, function (n) { p = p + '' === '0' ? 0 : +p || 2; var val = (0, _numeral.default)(n).format('0,0.'.padEnd(4 + p, '0')); return val; }); } };