我们经常会遇到两个或多个字符串相加或相减等操作,那么应该怎么实现呢
首先了解一些常用的把字符串转为数字的函数:
1.parseInt(将字符串转换为整数,适用于不带小数的字符串)
2.parseFloat(将字符串转换为浮点数-带小数点操作)
3.Number(能处理整数和浮点数,以及其他)
...
将字符串转为数字后,就可以进行正常的加减等操作了
1.普通的字符串相加
const a = '111.2'
const b = '11.5'
const sum = parseFloat(a) + parseFloat(b)
2.数组内多项操作(推荐使用reduce)
注:replace(/,/g, ''),是针对字符串中有','的情况,计算时不清除逗号,会导致结果出错;
最后附部分代码
totalMoney.value = props.batchArr.reduce((acc, item) => Number(acc) + Number(item.total.replace(/,/g, '')), 0)
给较长的字符串添加逗号分隔
const paddingNum = (num = 0) => {
return num.toString().replace(/\d+/, function (n) {
return n.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
});
}