num.charAt不起作用

时间:2017-08-01 14:29:49

标签: javascript

当我运行此代码时,控制台返回"类型错误:num.charAt不是函数"。为什么会发生这种情况,我该如何解决呢。

function convertToRoman(num) {
  var total = "";

  if (num >= 1000){
    total += "M";
  }
  if (num.charAt(1) >= 5){
    total += "D"; 
  }
  return total;
}

convertToRoman(1500);

3 个答案:

答案 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转换为字符串。