未捕获的类型错误:无法在 HTMLButtonElement.buttonClick 中设置未定义的属性“值”
2021-03-04
116
我尝试使用的计算器出现了问题。 单击按钮后,控制台显示这样的消息:
“未捕获 TypeError:无法在 HTMLButtonElement.buttonClick 处设置未定义的属性‘value’”。
这是存储库的链接:
https://github.com/PRMK01/Calculator
在此计算器中,底部输入最终将被隐藏,用于写下和评估方程式。我希望上方输入的工作方式与 Windows 计算器输入类似。
附注:我很生疏,提前感谢您的耐心等待!
2个回答
Javascript 发出抱怨,因为控制台显示,代码第 49 行有一个元素具有属性
value
,而该元素未定义。因此,它显示“无法读取未定义元素的
value
”。
此元素是
calculator.mathRow.length
:您要求的是
length
,但
calculator.mathRow
不是数组:它是一个
HTML 元素
,使用
this.mathRow = document.getElementById("mathrow");
在代码第 19 行检索。
如果您尝试
console.log(mathRow)
,它将打印
<input type="text" id="mathrow">
Don Diego
2021-03-04
问题是这样的:
if (calculator.mathRow[calculator.mathRow.length - 1].value = "+")
我必须先写 .value,然后再写 []。像这样:
if (calculator.mathRow.value[calculator.mathRow.length - 1] = "+")
PRMK
2021-03-05