38 lines
1.1 KiB
JavaScript
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;
|
|
}; |