首先很容易想到类型转换硬解,但是 parseInt API 对于特别大的数转换会出现不准确的情况。
还是老老实实参考官解吧。
var addToArrayForm = function (num, k) {
const res = [];
let sum = 0;
for (let i = num.length - 1; i >= 0; i--) {
sum = num[i] + (k % 10);
k = Math.floor(k / 10);
if (sum >= 10) {
k++;
sum %= 10;
}
res.push(sum);
}
// 进位
for (; k > 0; k = Math.floor(k / 10)) {
res.push(k % 10);
}
res.reverse();
return res;
};
一点细节



