【发布时间】:2017-11-06 22:30:57
【问题描述】:
这对你们那里的程序员来说可能听起来很简单,但我似乎无法弄清楚。我正在制作一个将十进制数字转换为罗马数字的程序。我已经让核心代码工作了,但我似乎无法思考如何在屏幕上显示结果。我希望这样当用户在文本框中键入一个数字时,按下一个按钮,结果就会出现在另一个文本框中。感谢您的时间和帮助。
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;
}
【问题讨论】:
-
您的 HTML 在哪里?您将使用(也许)
document.getElementById()来获取对您的文本框的引用,并使用.addEventListener()为input或change事件添加处理程序,以便在用户在字段中键入时运行现有的 JS。
标签: javascript function for-loop if-statement