Я создал функцию, которая уменьшает два числа с отношением дробной части. Он работает отлично, но проблема в том, что он не вернет значение. Я пробовал различные вещи, такие как объявление новой переменной, а затем ее возврат, но это не сработает. Я также добавил пару console.logs, чтобы посмотреть, останавливается ли она в определенном месте, но ничего, это просто ничего не возвращает.
Вот мой код:Функция JavaScript, не возвращающая ничего
function reduceFraction(n, d) {
var numerator = n;
var denominator = d;
if (n % 7 === 0 && d % 7 === 0) {
numerator /= 7;
denominator /= 7;
console.log('Divided by 7');
reduceFraction(numerator, denominator);
} else {
if (n % 5 === 0 && d % 5 === 0) {
numerator /= 5;
denominator /= 5;
console.log('Divided by 5');
reduceFraction(numerator, denominator);
} else {
if (n % 3 === 0 && d % 3 === 0) {
numerator /= 3;
denominator /= 3;
console.log('Divided by 3');
reduceFraction(numerator, denominator);
} else {
if (n % 2 === 0 && d % 2 === 0) {
numerator /= 2;
denominator /= 2;
console.log('Divided by 2');
reduceFraction(numerator, denominator);
} else {
console.log('Was not divided by anything');
var reduced = numerator + "/" + denominator;
return reduced; //console.log(numerator + "/" + denominator); logs 1/18
}
}
}
}
}
reduceFraction(3, 54);
Я не знаю, если вложенности кучи если заявления должны сделать что-нибудь с ним, но это единственным способом (что я могу думать) прямо сейчас, что это приведет к сокращению фракция ... Спасибо заранее.