function percentToValue(value) {
value = value + '';
const pointIndex = value.indexOf('.');
if (pointIndex === -1) return (value - 0) / 100;
const powIndex = value.length - pointIndex - 1;
return (value.replace('.', '') - 0) / Math.pow(10, powIndex + 2);
}
function valueToPercent(value) {
value = value + '';
const pointIndex = value.indexOf('.');
if (pointIndex === -1) return (value - 0) * 100;
const powIndex = value.length - pointIndex - 1;
return (value.replace('.', '') - 0) * Math.pow(10, 2 - powIndex);
}
这两段代码一段是百分比转成小数,一段时小数转成百分比,主要是为了避免在运算过程中数字出现精度问题。