Javascript 在屏幕上显示代码时出现故障

Javascript 在屏幕上显示代码时出现故障,javascript,function,for-loop,if-statement,Javascript,Function,For Loop,If Statement,对于你们这些程序员来说,这听起来可能很简单,但我似乎无法理解。我正在制作一个程序,将十进制数转换成罗马数字。我已经有了核心代码,但我似乎无法思考如何在屏幕上显示结果。我希望这样,当用户在一个文本框中键入一个数字时,按下一个按钮,结果就会显示在另一个文本框中。谢谢你的时间和帮助 function convertToRoman(num) { var romans = { M: 1000, CM: 900, D: 500, CD: 400, C: 100,

对于你们这些程序员来说,这听起来可能很简单,但我似乎无法理解。我正在制作一个程序,将十进制数转换成罗马数字。我已经有了核心代码,但我似乎无法思考如何在屏幕上显示结果。我希望这样,当用户在一个文本框中键入一个数字时,按下一个按钮,结果就会显示在另一个文本框中。谢谢你的时间和帮助

function convertToRoman(num) {
var romans = {
    M:  1000,
    CM: 900,
    D:  500,
    CD: 400,
    C:  100,
    XC: 90,
    L:  50,
    XL: 40,
    X:  10,
    IX: 9,
    V:  5,
    IV: 4,
    I:  1,
};

var result = '';

for (var key in romans) {
    if (num >= romans[key]) {
        result += key.repeat(Math.trunc(num / romans[key]));
        num -= romans[key] * Math.trunc(num / romans[key]);
    }
}

return result;

}

如果您添加一个div元素并给它一个类似于“output”的id,您可以这样做

document.getElementById("output").innerHTML = result;
  • 您可以使用可靠的旧
    警报
    功能。只需执行
    警报(转换器阿曼(10))
    。将其放入
    标记或body onload属性中
  • 对于更专业的调试,您可以使用
    console.log
    。源于一个名为Firebug的Firefox插件,现在所有浏览器都支持它。只需键入
    console.log(convertToRoman(10))结果将打印到控制台,要查看它,请右键单击浏览器,打开“检查文档”并移动到控制台选项卡,或者在Chrome中按Ctrl+Shift+I

  • 您缺少将结果附加到html的部分。请参见下面的工作代码作为示例

    函数转换器(num){
    var romans={
    M:1000,
    厘米:900,
    D:500,
    CD:400,
    C:100,
    XC:90,
    L:50,
    XL:40,
    X:10,
    IX:9,
    五:五,,
    四:4,,
    一:1,,
    };
    var结果=“”;
    for(罗马语中的var键){
    如果(num>=romans[key]){
    结果+=key.repeat(Math.trunc(num/romans[key]);
    num-=romans[key]*Math.trunc(num/romans[key]);
    }
    }
    document.getElementById('output').innerHTML=result;
    }
    兑换阿曼(12345)
    
    我的结果
    你的HTML在哪里?您可以(也许)使用
    document.getElementById()
    获取对文本框的引用,并使用
    .addEventListener()
    输入添加处理程序,或者使用
    更改
    事件在用户在字段中键入时运行现有的JS。