在javascript中,对表示数字的字符串相加而不进行完整转换
我们需要编写一个 JavaScript 函数,输入为两个字符串 str1 和 str2,它们分别表示两个数字。
在不将整个字符串转换为相应数字的情况下,我们的函数应计算这两个字符串数字的和,并返回结果作为字符串。
例如,
如果两个字符串为:
const str1 = '234'; const str2 = '129';
那么输出应为 363。
示例
以下是代码:
const str1 = '234'; const str2 = '129'; const addStringNumbers = (str1, str2) => { let ind1 = str1.length - 1, ind2 = str2.length - 1, res = "", carry = 0; while(ind1 >= 0 || ind2 >= 0 || carry) { const val1 = str1[ind1] || 0; const val2 = str2[ind2] || 0; let sum = +val1 + +val2 + carry; carry = sum > 9 ? 1 : 0; res = sum % 10 + res; ind1--; ind2--; }; return res; }; console.log(addStringNumbers(str1, str2));
输出
以下是控制台输出:
363
广告