当我运行此代码时,控制台返回"类型错误:num.charAt不是函数"。为什么会发生这种情况,我该如何解决呢。
function convertToRoman(num) {
var total = "";
if (num >= 1000){
total += "M";
}
if (num.charAt(1) >= 5){
total += "D";
}
return total;
}
convertToRoman(1500);
答案 0 :(得分:1)
#String.charAt
不适用于数字。如果您希望它正常工作,请将您的num
变量转换为字符串,例如:
('' + num).charAt(1)
num.toString().charAt(1)
String(num).charAt(1)
答案 1 :(得分:0)
charAt()方法从字符串返回指定的字符。由于您的输入是类型编号,因此失败。
答案 2 :(得分:0)
("" + num).charAt(1)
尝试将num
转换为字符串。