调用设置为变量的函数错误:“未捕获的类型错误:无法读取未定义的属性‘长度’”
2020-03-01
92
我正在遵循 leetcode 解决方案并尝试在我的 IDE 中理解它,但是当我尝试调用它时出现上述错误。
var romanToInt = function(s) {
const map = {
I: 1,
V: 5,
X: 10,
L: 50,
C: 100,
D: 500,
M: 1000
};
let i = s.length;
let result = 0;
while (i--) {
const curr = map[s.charAt(i)];
const prev = map[s.charAt(i - 1)];
result += curr;
if (prev < curr) {
result -= prev;
i -= 1;
}
}
return result;
};
romanToInt();
我应该怎么做?
2个回答
此行导致错误:
261488358
当您以这样的调用函数时:
romantoint();
>
参数
s
(
函数{...
)是
undefined
当您将括号中的函数传递给函数时。
未定义的
没有属性
长度
。这就是错误的含义。该属性可在字符串上可用,这意味着您需要将字符串传递给这样的函数:
6044457223
该函数将从背面开始迭代从字符串开始。转到开始。
请参阅:
585366193
Max
2020-03-01
搞明白了。 我必须这样称呼它:
romanToInt("V");
console.log("works", romanToInt("V"));
John White
2020-03-01