javascript在一个if语句上执行多个操作
我想做的事情可以总结如下:“如果满足此条件,那么执行以下多个操作。”我的代码在第一件事情上运行良好,但当我添加要执行的其他操作时,会出现“Uncaught SyntaxError:Unexpected token else”错误。我会记下下面的问题行javascript在一个if语句上执行多个操作,javascript,Javascript,我想做的事情可以总结如下:“如果满足此条件,那么执行以下多个操作。”我的代码在第一件事情上运行良好,但当我添加要执行的其他操作时,会出现“Uncaught SyntaxError:Unexpected token else”错误。我会记下下面的问题行 function turnonall(cl) { var elements = document.getElementsByClassName(cl); for (var i = 0; i < elements.lengt
function turnonall(cl) {
var elements = document.getElementsByClassName(cl);
for (var i = 0; i < elements.length; i++){
if (elements[i].style.display == 'none' || elements[i].style.display == '' || elements[i].style.display == 'block')
elements[i].style.display = 'block';
elements[i].style.className = 'buttonactive'; <--this line is throwing the error.
else
elements[i].style.display = 'none';
}
}
功能旋转(cl){
var elements=document.getElementsByClassName(cl);
对于(var i=0;i函数turnonall(cl){
var elements=document.getElementsByClassName(cl);
对于(var i=0;i 元素[i].style.className='buttonactive';您的if/else
语句的签名不正确。您尝试的操作仅适用于if/else
语句中只有一行的if
语句。一旦您在无括号的if/else
语句中添加了多行,则括号是必需的
只需将if和else块用括号括起来,如下所示:
function turnonall(cl) {
var elements = document.getElementsByClassName(cl);
for (var i = 0; i < elements.length; i++) {
if (elements[i].style.display == 'none' || elements[i].style.display == '' || elements[i].style.display == 'block') {
elements[i].style.display = 'block';
elements[i].style.className = 'buttonactive';
} else {
elements[i].style.display = 'none';
}
}
}
但事实并非如此
if (true)
console.log('it is true')
console.log('and I like it')
else
console.log('it is not true')
你缺少括号{}但你并没有错。事实上,你可以做你想做的事情,只要在if
语句中只有一行。检查我的答案是否详细。@Chris指出,一旦你接受另一个答案,你就不接受你接受的第一个答案。(只是为了让你熟悉这个系统,完全不是为了暗示你接受我的答案)。你也可以投票选出好的但不是最好的答案。是的,很抱歉弄错了。顺便说一句,我已经投票选出了你的答案,但我想在我的声誉分数提高之前,它不会显示出来。
if (true)
console.log('it is true')
else
console.log('it is not true')
if (true)
console.log('it is true')
console.log('and I like it')
else
console.log('it is not true')