Portfolio-v3/lib/romanNumerals.js
Robert S 6dfe7db5b7
Best practices
- Move romanNumerals.js to the lib directory.
- Fix SEO link crawling issue by making the Discord button a <button>, not an <a>.
2021-12-15 16:08:50 +01:00

13 lines
No EOL
519 B
JavaScript

export default function RomanNumerals(num) {
if (isNaN(num))
return NaN;
let digits = String(+num).split(""),
key = ["", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM",
"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC",
"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"],
roman = "",
i = 3;
while (i--)
roman = (key[+digits.pop() + (i * 10)] || "") + roman;
return Array(+digits.join("") + 1).join("M") + roman;
}