如何使用JavaScript将十进制数字转换为罗马数字?

要将十进制数字转换为罗马数字,请尝试运行以下JavaScript代码-

示例

<!DOCTYPE html>
<html>
   <body>
      <script>
         //罗马数字
         var romanNum = new Array();
         romanNum = ["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"];
         //十进制数
         var dNum = new Array();
         dNum = [1000,900,500,400,100,90,50,40,10,9,5,4,1];
         function decimalRoman(value) {
            if (value <= 0 || value >= 4000)
               return value;
               var romanNumeral = "";
            for (var i = 0; i<romanNum.length; i++) {
               while (value >= dNum[i]) {
                  value -= dNum[i];
                  romanNumeral += romanNum[i];
               }
            }
            return romanNumeral;
         }
         document.write(decimalRoman(39));
         document.write("<br>"+decimalRoman(145));
         document.write("<br>"+decimalRoman(520));
      </script>
   </body>
</html>

输出结果

XXXIX
CXLV
DXX