2
2
3
3
// 大数相加:以字符串的形式读入两个较大的数字,编写一个函数计算它们的和,以字符串形式返回。
4
4
function solveMeFirst1 ( number1 , number2 ) {
5
- let longArr , shortArr ;
5
+ let longStr , shortStr ;
6
6
if ( number1 . length > number2 . length ) {
7
- longArr = Array . from ( number1 ) ;
8
- shortArr = Array . from ( number2 ) ;
7
+ longStr = number1 ;
8
+ shortStr = number2 ;
9
9
} else {
10
- longArr = Array . from ( number2 ) ;
11
- shortArr = Array . from ( number1 ) ;
10
+ longStr = number2 ;
11
+ shortStr = number1 ;
12
12
}
13
13
14
- const max = longArr . length , min = shortArr . length ;
14
+ const max = longStr . length , min = shortStr . length ;
15
15
let add10 = 0 , res = '' , num , num1 , num2 ;
16
16
for ( let i = 0 ; i < max ; i ++ ) {
17
17
if ( i < min ) {
18
- num1 = Number ( longArr [ longArr . length - i - 1 ] ) ;
19
- num2 = Number ( shortArr [ shortArr . length - i - 1 ] ) ;
18
+ num1 = Number ( longStr [ longStr . length - i - 1 ] ) ;
19
+ num2 = Number ( shortStr [ shortStr . length - i - 1 ] ) ;
20
20
} else {
21
- num1 = Number ( longArr [ longArr . length - i - 1 ] ) ;
21
+ num1 = Number ( longStr [ longStr . length - i - 1 ] ) ;
22
22
num2 = 0 ;
23
23
}
24
24
num = num1 + num2 + add10 ;
25
25
add10 = 0 ;
26
- if ( i !== max - 1 && num >= 10 ) {
26
+ if ( num >= 10 && i !== max - 1 ) {
27
27
num = num - 10 ;
28
28
add10 = 1 ;
29
29
}
@@ -32,4 +32,4 @@ function solveMeFirst1(number1, number2) {
32
32
return res ;
33
33
}
34
34
35
- console . log ( solveMeFirst1 ( '589465849568 ' , '669784652318 ' ) , 589465849568 + 669784652318 ) ;
35
+ console . log ( solveMeFirst1 ( '589465849568234523 ' , '66978465231823456 ' ) , 589465849568234523 + 66978465231823456 ) ;
0 commit comments