1 Star 0 Fork 1

onlylylt/前端代码片段库

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
小数计算.js 1.29 KB
一键复制 编辑 原始数据 按行查看 历史
mrdotyan 提交于 2021-04-12 14:18 . add And fixed And Changed
export default {
//两位小数相加,可多个值
decimalAddition: function () {
const args = arguments;
let total = 0.00;
for (let i = 0; i < args.length; i++) {
//验证值是否两位小数
var reg = /^(0|([1-9][0-9]*)|(([0]\.\d{1,2}|[1-9][0-9]*\.\d{1,2})))$/;
if (!reg.test(args[i])) {
continue;//验证错误进入下一个循环
}
total = (total * 1000 + parseFloat(args[i]) * 1000) / 1000;
}
return total;
},
//两位小数相减
decimalSubtraction: function () {
var args = arguments;
if (args.length == 1) {
return args[0];
}
//验证值是否两位小数
var reg = /^(0|([1-9][0-9]*)|(([0]\.\d{1,2}|[1-9][0-9]*\.\d{1,2})))$/;
if (!reg.test(args[0])) {
args[0] = 0.00;
}
if (!reg.test(args[1])) {
args[1] = 0.00;
}
var result = parseFloat(args[0]) - parseFloat(args[1]);
result = Math.round(parseFloat(result) * 100) / 100;//保留两位小数
let numStrings = result.toString().split('.');
let integerFraction = numStrings[0];
let decimalFraction = '00';
if (numStrings.length > 1) {
decimalFraction = numStrings[1] == null ? '00' : numStrings[1].padEnd(2, '0');
}
result = parseFloat(`${integerFraction}.${decimalFraction}`);
return result;
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
JavaScript
1
https://gitee.com/onlymry/code.git
git@gitee.com:onlymry/code.git
onlymry
code
前端代码片段库
master

搜索帮助