
实现了大数的相加的实现思路
const add = (a, b) => {// 1. 先转换字符串a = a + ''b = b + ''// 获取最大个数const max = Math.max(a.length, b.length)a = a.padStart(max, '0')b = b.padStart(max, '0')let surplus = 0,sum = '',i = max - 1for (; i >= 0; i -= 1) {// 将两个值的最后一位相加const total = +a[i] + +b[i]// 获取个数位的值const discuss = total % 10// 个数位的值 + 上一次的进位结果const nums = surplus + +discusssurplus = 0if (total > 9) surplus += 1if (nums > 9) surplus += 1// 计算结果sum = (sum === '' ? nums % 10 : (nums % 10) + sum) + ''}return sum}
- 两个数的个数必须相等
- 从后往前依次添加,如果遇到大于10的,直接进位,参数下一次运算
