nicecode-v2/packages/func/es/number/index.js
2024-01-16 11:44:26 +08:00

38 lines
1.1 KiB
JavaScript

/**
* 设置数据的精度
* @param originNumber
* @param accuracy 精度 以原点为中心向左为正,向右为负,
* @param isCeil 是否为向上取整
* @returns number
*/
export var setNumberAccuracy = function setNumberAccuracy(originNumber) {
var accuracy = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
var isCeil = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
if (originNumber === 0) {
return 0;
}
var returnData = 0;
if (isCeil) {
returnData = Math.ceil(originNumber / Math.pow(10, accuracy)) * Math.pow(10, accuracy);
} else {
returnData = Math.floor(originNumber / Math.pow(10, accuracy)) * Math.pow(10, accuracy);
}
//设置精度
if (accuracy < 0) {
returnData = Number(returnData.toFixed(-accuracy));
} else {
returnData = Number(returnData.toFixed(0));
}
return returnData;
};
/**
* 获取数字
* @param number 需要校验的数值
* @returns @number
*/
export var toRealNumber = function toRealNumber(number) {
if (isNaN(number) || number === Infinity) {
return 0;
} else return number;
};