mathjs 数字处理

// mathjs 四舍五入取整 val:值
export function roundingInt(val) {
if (val) {
return math.round(val, 0)
}
}

// mathjs 四舍五入 val:值,num:小数位
export function rounding(val, num, zero) {
if (val) {
if (!num) {
num = 2
}
if (zero !== false) { // 补零
const data = math.round(val, num)
let datas = data.toString()
const index = datas.indexOf('.')
if (index === -1 && num === 2) { // 两位小数
datas = `${datas}.00`
} else if (index > -1 && datas.substring(index + 1, datas.length).length === 1 && num === 2) { // 两位小数
datas = `${datas}0`
} else if (index > -1 && datas.substring(index + 1, datas.length).length < num && num > 2) { // 大于两位小数
const indexs = datas.substring(index + 1, datas.length)
let number = 0
for (let i = indexs; i < num; i++) {
number = `${number}0`
}
datas = `${datas}${number}`
} else if (index === 0 && num === 1) { // 一位位小数
datas = `${datas}.0`
}
return datas
} else {
return math.round(val, num)
}
} else {
return 0
}
}

// mathjs 进位取整 val:值,or:向上||向下取整,false,true
export function floorInt(val, or) {
if (val) {
if (!or) {
return math.ceil(val)
} else {
return math.floor(val)
}
}
}
posted @ 2022-07-27 10:49  谎渊  阅读(184)  评论(0)    收藏  举报