在 for 循环 jQuery 中使用 one()

use one() within a for loop jquery

本文关键字:one for 循环 jQuery      更新时间:2023-09-26
for (var i = 0; i < res.length; i++) {
    if (res[i] != 'a' && res[i] != '-b') {
    } else {
        // alert will triger multiple times here
        alert();
    }
}

我遍历一个数组来检查某些东西,如何在 else 语句中运行一次? 如果我在那里放一个函数,它会触发多次。

你需要打破;在你的其他操作之后。

试试这个:

for (var i = 0; i < res.length; i++) {
    if (res[i] != 'a' && res[i] != '-b') {
    } else {
        // alert will triger multiple times here
        alert();
        break;
    }
}

您可以使用标志来指示 else 块是否已执行,如果是,请不要再次执行它

var run = true;
for (var i = 0; i < res.length; i++) {
    if (res[i] != 'a' && res[i] != '-b') {
    } else if (run) {
        // alert will triger multiple times here
        alert();
        run = false;
    }
}

您可以使用一个简单的布尔标志:

// Introduce the flag before your for loop
var process = true;
for (var i = 0; i < res.length; i++) {
    if (res[i] != 'a' && res[i] != '-b') {
    } else if(process) {
        // alert will triger multiple times here
        alert();
        process = false; // Reset the process flag
    }
}