Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 应为赋值或函数调用,而在调用函数时看到表达式_Javascript_Html_Jshint - Fatal编程技术网

Javascript 应为赋值或函数调用,而在调用函数时看到表达式

Javascript 应为赋值或函数调用,而在调用函数时看到表达式,javascript,html,jshint,Javascript,Html,Jshint,我正在制作一个抽认卡/测试程序。出于某种原因,我在调用函数getAns时没有检查结果。JSHint给出了以下错误: 应为赋值或函数调用,而应为表达式 这是我的密码: 函数getAns(){ 如果(回答[i]==最后按){ document.getElementById(“ans”).innerHTML=“你说得对!答案是”+lastPress; }否则{ document.getElementById(“ans”).innerHTML=“很抱歉,这是不正确的。答案是“+answer[i]; }

我正在制作一个抽认卡/测试程序。出于某种原因,我在调用函数getAns时没有检查结果。JSHint给出了以下错误:

应为赋值或函数调用,而应为表达式

这是我的密码:

函数getAns(){ 如果(回答[i]==最后按){ document.getElementById(“ans”).innerHTML=“你说得对!答案是”+lastPress; }否则{ document.getElementById(“ans”).innerHTML=“很抱歉,这是不正确的。答案是“+answer[i]; } i++; document.getElementById(“问题”).innerHTML=questions[i]; } document.getElementById(“true”).onclick=function(){ lastPress=true }; document.getElementById(“true”).onclick=function(){ 格坦斯 }; document.getElementById(“false”).onclick=function(){ lastPress=false }; document.getElementById(“false”).onclick=function(){ 格坦斯 };
看起来您将
getAns
用作语句而不是作为函数调用时出错

理想情况下,onclick函数会将最后一次按键传递给
getAns()
。例如:

document.getElementById("true").onclick = function() {
   getAns(true);
};
您的处理程序将收到以下值:

function getAns(lastPress) {
    ...
}

getAns
是一个表达式,不是赋值(
getAns=…
)或函数调用(
getAns()
)。此外,您似乎正在为每个元素添加两个不同的
onclick
函数。Re@jornsharpe的第二点:如果您想在处理程序中执行两件事情,请在单个处理程序函数中依次编写:
.onclick=function(){lastPress=true;getAns();}
但也考虑使用现代事件处理(
addEventListener
),而不是分配给
onclick