Ok, I will definitely rewrite this solution, because it’s too straightforward, and there is definitely a pattern in terms of decimal to roman convertion which can be used.
But I wanted to play around accessing object props(like in record collection step from Basic JS), and apparently it was enough to pass
function convertToRoman(num) {
const romanDictionary = {
0 : {
0: '',
1: 'I',
2: 'II',
3: 'III',
4: 'IV',
5: 'V',
6: 'VI',
7: 'VII',
8: 'VIII',
9: 'IX'
},
1 : {
0: '',
1: 'X',
2: 'XX',
3: 'XXX',
4: 'XL',
5: 'L',
6: 'LX',
7: 'LXX',
8: 'LXX',
9: 'LC'
},
2 : {
0: '',
1: 'C',
2: 'CC',
3: 'CCC',
4: 'CD',
5: 'D',
6: 'DC',
7: 'DCC',
8: 'DCCC',
9: 'CM'
},
3 : {
0: '',
1: 'M',
2: 'MM',
3: 'MMM'
}
}
formattedNumber = String(number).split("").reverse();//4321 >>> ['1', '2', '3', '4']
return formattedNumber.map(
(digit, index) => romanDictionary[index][digit]
).reverse().join('')
}