I believe I have completed the project/challenge for creating a Roman Numeral converter in vanilla JS. However, the FCC platform doesn’t like my solution. I am getting a console log right before my returns that match the test, but as I said, the FCC platform disagrees.
One thing I am questioning is whether or not I am using return correctly in a recursive function. Am I using it correctly?
Any help would be much appreciated!
var myAnswer = “”;
function convertToRoman(num) {
console.log(‘num’, num)
var remaining = num;var romanNumerals = [‘I’,‘IV’,‘V’,‘IX’,‘X’,‘XL’,‘L’,‘XC’,‘C’,‘CD’,‘D’,‘CM’,‘M’]
var romanValues = [1,4,5,9,10,40,50,90,100,400,500,900,1000]for(var i = romanValues.length -1; i >= 0; i–){
if (romanValues[i] <= remaining){
console.log(‘roman Value’,romanValues[i]);
myAnswer = myAnswer + romanNumerals[i];
remaining = remaining - romanValues[i];
console.log(‘remaining’,remaining);
if (remaining == 0){
console.log(‘answer:’,myAnswer)
return myAnswer
} else {
return convertToRoman(remaining)
}
}
}
}convertToRoman(2);