roman numerals

🧩 Syntax:
class RomanNumerals {
  
  static toRoman(num) {
    const map = {
      4: {
        1: 'M',
        2: 'MM',
        3: 'MMM',
        4: 'MMMM'
      },
      3: {
        1: 'C',
        2: 'CC',
        3: 'CCC',
        4: 'CD',
        5: 'D',
        6: 'DC',
        7: 'DCC',
        8: 'DCCC',
        9: 'CM',
        0: ''
        },
      2: {
        1: 'X',
        2: 'XX',
        3: 'XXX',
        4: 'XL',
        5: 'L',
        6: 'LX',
        7: 'LXX',
        8: 'LXXX',
        9: 'XC',
        0: ''
        },
      1: {
        1: 'I',
        2: 'II',
        3: 'III',
        4: 'IV',
        5: 'V',
        6: 'VI',
        7: 'VII',
        8: 'VIII',
        9: 'IX',
        0: ''
      }
    }
    const digits = String(num).split('').map(x => parseInt(x))
    const numOfDigits = digits.length
    var currentIndex = 0
    var romanRepresentation = ''
    while(currentIndex <= numOfDigits) {
      const orderOfDigit = numOfDigits - currentIndex
      romanRepresentation = romaRepresentation + map[orderOfDigit][digits[orderOfDigit]]
    }
    return romanRepresentation;
  }

  static fromRoman(str) {
    return 4;
  }
}