const fun = (map, remainder, remainders, denominator) => {
if (map.has(remainder)) {
remainders.splice(map.get(remainder), 0, '(');
map.set(remainder, remainders.length);
num = Math.floor(remainder / denominator);
remainder %= denominator;
return fun(map, remainder, remainders, denominator);
const fractionToDecimal = function (numerator, denominator) {
if ((denominator < 0) ^ (numerator < 0)) {
denominator = Math.abs(denominator);
numerator = Math.abs(numerator);
const integer = Math.floor(numerator / denominator);
const remainder = numerator % denominator;
remainders = fun(map, remainder, remainders, denominator);
result += remainders.join('');