跳出 if 语句
Break out of an if statement
JSHint 告诉我不要在 if
语句中使用标签(就 jshint 而言,标签似乎只用于循环)。
forminjection: if (options.addToForm !== false) {
if (!(options.addToForm instanceof jQuery)) {
options.addToForm = $(element).closest("form");
if (options.addToForm.length === 0)
{
options.addToForm = false;
break forminjection;
}
}
$(element).each(function(index){
//do stuff
});
}
所以我在上面的第一行和 break
行(自然地)收到警告。
更新: 此代码按预期工作,但显然不是实现最终结果的正确方法。应该如何重构?
好的,我正在测试这个清理后的解决方案
if (options.addToForm instanceof jQuery || options.addToForm === true) {
if (options.addToForm === true) {
options.addToForm = $(element).closest("form");
}
if (options.addToForm.length === 0) {
// No form found
options.addToForm = false;
}
}
if (options.addToForm !== false) {
$(element).each(function(index) {
// Do Stuff
});
}
JSHint 告诉我不要在 if
语句中使用标签(就 jshint 而言,标签似乎只用于循环)。
forminjection: if (options.addToForm !== false) {
if (!(options.addToForm instanceof jQuery)) {
options.addToForm = $(element).closest("form");
if (options.addToForm.length === 0)
{
options.addToForm = false;
break forminjection;
}
}
$(element).each(function(index){
//do stuff
});
}
所以我在上面的第一行和 break
行(自然地)收到警告。
更新: 此代码按预期工作,但显然不是实现最终结果的正确方法。应该如何重构?
好的,我正在测试这个清理后的解决方案
if (options.addToForm instanceof jQuery || options.addToForm === true) {
if (options.addToForm === true) {
options.addToForm = $(element).closest("form");
}
if (options.addToForm.length === 0) {
// No form found
options.addToForm = false;
}
}
if (options.addToForm !== false) {
$(element).each(function(index) {
// Do Stuff
});
}