vant
Version:
Mobile UI Components built on Vue
53 lines (41 loc) • 1.07 kB
JavaScript
exports.__esModule = true;
exports.range = range;
exports.formatNumber = formatNumber;
function range(num, min, max) {
return Math.min(Math.max(num, min), max);
}
function trimExtraChar(value, _char, regExp) {
var index = value.indexOf(_char);
var prefix = '';
if (index === -1) {
return value;
}
if (_char === '-' && index !== 0) {
return value.slice(0, index);
}
if (_char === '.' && value.match(/^(\.|-\.)/)) {
prefix = index ? '-0' : '0';
}
return prefix + value.slice(0, index + 1) + value.slice(index).replace(regExp, '');
}
function formatNumber(value, allowDot, allowMinus) {
if (allowDot === void 0) {
allowDot = true;
}
if (allowMinus === void 0) {
allowMinus = true;
}
if (allowDot) {
value = trimExtraChar(value, '.', /\./g);
} else {
value = value.split('.')[0];
}
if (allowMinus) {
value = trimExtraChar(value, '-', /-/g);
} else {
value = value.replace(/-/, '');
}
var regExp = allowDot ? /[^-0-9.]/g : /[^-0-9]/g;
return value.replace(regExp, '');
}
;