gpt4 book ai didi

Javascript 在 if else 语句中执行多个 case

转载 作者:行者123 更新时间:2023-11-30 06:57:22 25 4
gpt4 key购买 nike

我对一些 javascript 有一个奇怪的问题。在下面的代码中,浏览器会在 if、else if、else if 条件下执行多个路径。因此,例如控制台将记录“a c”或“b c”。

if (divs[i].row == hover_div.row && divs[i].obj != hover_div.obj)
{
console.log("a");
divs[i].obj.stop()
.animate({'width':d_thin}, { duration:600, queue:false })
.animate({'height':d_expand}, { duration:600, queue:false });
}
else if (divs[i].col == hover_div.col && divs[i].obj != hover_div.obj)
{
console.log("b");
divs[i].obj.stop()
.animate({'width':d_expand}, { duration:600, queue:false })
.animate({'height':d_thin}, { duration:600, queue:false });
}
else if (divs[i].obj != hover_div.obj);
{
console.log("c");
divs[i].obj.stop()
.animate({'width':d_thin}, { duration:600, queue:false })
.animate({'height':d_thin}, { duration:600, queue:false });
}

我已经通过在 block 外添加一个计数器来检查代码没有执行两次。如果我像下面那样嵌套 if 语句,那么整个事情都可以正常进行,但我不需要这样做吗?

if (divs[i].row == hover_div.row && divs[i].obj != hover_div.obj)
{
console.log("a");
divs[i].obj.stop()
.animate({'width':d_thin}, { duration:600, queue:false })
.animate({'height':d_expand}, { duration:600, queue:false });
}
else {
if (divs[i].col == hover_div.col && divs[i].obj != hover_div.obj)
{
console.log("b");
divs[i].obj.stop()
.animate({'width':d_expand}, { duration:600, queue:false })
.animate({'height':d_thin}, { duration:600, queue:false });
}
else {
if (divs[i].obj != hover_div.obj);
{
console.log("c");
divs[i].obj.stop()
.animate({'width':d_thin}, { duration:600, queue:false })
.animate({'height':d_thin}, { duration:600, queue:false });
}
}
}

最佳答案

else if (divs[i].obj != hover_div.obj); // <--

删除分号

关于Javascript 在 if else 语句中执行多个 case,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10281009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com