Fraction to Recurring Decimal LeetCode solution in JavaScript

1
var fractionToDecimal = function (numerator, denominator) {
2
if (numerator == 0) return "0";
3
let result = "";
4
if (numerator * denominator < 0) {
5
result += "-";
6
}
7

8
let dividend = Math.abs(numerator);
9
let divisor = Math.abs(denominator);
10
result += Math.floor(dividend / divisor).toString();
11

12
let remainder = dividend % divisor;
13
if (remainder == 0) return result;
14

15
result += ".";
16

17
let map1 = new Map();
18
while (remainder != 0) {
19
if (map1.has(remainder)) {
20
let i = map1.get(remainder);
21
result = result.slice(0, i) + "(" + result.slice(i) + ")";
22
break;
23
}
24
map1.set(remainder, result.length);
25
remainder *= 10;
26
result += Math.floor(remainder / divisor).toString();
27
remainder %= divisor;
28
}
29
return result;
30
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0