我想知道是否可以从回调函数中突破“ super 函数”。我简化了代码以使其更具可读性
function isClicked() {
var userInputs = $("input");
userInputs.each(function (index, element) {
if ($(element).val() === "")
return; //But I want to break out from isClicked()
});
}
我本能地编写了这段代码,但我很快意识到我的推理是错误的,仅从回调的当前迭代返回中断。
基本上,我的问题是是否可以在回调中突破 isClicked() 。
我的问题有一个简单的解决办法,但我想知道上述是否可能
最佳答案
返回 false 会阻止 .each() 继续迭代:
function isClicked() {
var userInputs = $("input");
userInputs.each(function (index, element) {
if ($(element).val() === "")
return false; //Returning false ends the .each() iterating
});
}
问题中提供的代码不需要,但我有时需要使用嵌套循环执行如下操作(在提供的情况下不需要):
function isClicked() {
for (i=0;i<variable.length;i++) {
var userInputs = $("input");
var done = false;
userInputs.each(function (index, element) {
if ($(element).val() === "") {
done = true;
return false; //Returning false ends the .each() iterating
}
});
if (done)
return true;
}
}
关于javascript - 从回调中突破 "super function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28642426/