function largeNumAdd(a = "", b = "") {
// 数字左侧补 0
let maxLen = Math.max(a.length, b.length);
b = b.padStart(maxLen, '0'); //123->123
a = a.padStart(maxLen, '0'); // 1->001
// 结果字符串
let res = '';
// 相加进位保存
let carry = 0;
// 从右到左 个位开始依次相加
for (let i = maxLen - 1; i >= 0; i--) {
let add = parseInt(a[i] || 0) + parseInt(b[i] || 0) + carry;
carry = add > 10 ? 1 : 0;
res = `${add%10}${res}`;
}
// 最高位相加是否有进位
if (carry == 1) {
res = `${carry}${res}`;
}
return res;
}
console.log(largeNumAdd("12311125611111999", "999"));