冷凝胶前端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

68 lines
1.4 KiB

import {Decimal} from "decimal.js";
// args第一位为被操作数据
//保留小数向上取整
function formatUp(num, len) {
return new Decimal(num).toDecimalPlaces(len, Decimal.ROUND_UP).toString()
}
//保留小数向下取整
function formatDown(num, len) {
return new Decimal(num).toDecimalPlaces(len, Decimal.ROUND_DOWN).toNumber()
}
//加法
function add(...args) {
let result = new Decimal(args[0]);
for (let i = 1; i < args.length; i++) {
result = result.add(new Decimal(args[i]));
}
return result.toNumber();
}
//减法
function sub(...args) {
let result = new Decimal(args[0]);
for (let i = 1; i < args.length; i++) {
result = result.sub(new Decimal(args[i]));
}
return result.toNumber();
}
//乘法
function mul(...args) {
let result = new Decimal(args[0]);
for (let i = 1; i < args.length; i++) {
result = result.mul(new Decimal(args[i]));
}
return result.toNumber();
}
//除法
function div(...args) {
let result = new Decimal(args[0]);
for (let i = 1; i < args.length; i++) {
result = result.div(new Decimal(args[i]));
}
return result.toNumber();
}
//取余
function mod(...args) {
let result = new Decimal(args[0]);
for (let i = 1; i < args.length; i++) {
result = result.modulo(new Decimal(args[i]));
}
return result.toNumber();
}
export default {
formatUp,
formatDown,
add,
sub,
mul,
div,
mod
};