看來jquery每個回圈中的回傳詞不會結束整個函式。這是下面的代碼。目的是,當陣列中的值不是數字時,它應該停止所有函式,而不僅僅是回圈。但事實證明,它只會停止回圈并繼續下面的其他邏輯。
在 C# 或 Java 中,回傳字將停止整個函式。JavaScript 中不是這樣設計的嗎?
function testMehtod() {
var itemIds = [];
$("#confirmOrderItemContainer").find(":checkbox:checked").each(function (i, o) {
itemIds[i] = $(o).attr('item-id');
if (isNaN(itemIds[i])) {
return false;
}
});
//other logic ...
}
uj5u.com熱心網友回復:
如果你需要抓住打破回圈并回傳 false 太:
function testMehtod() {
var itemIds = [];
var ret = true; // our flag variable with default value - everything is good
$("#confirmOrderItemContainer").find(":checkbox:checked").each(function (i, o) {
itemIds[i] = $(o).attr('item-id');
if (isNaN(itemIds[i])) { // not good
ret = false; // let set flag about it
return false; // break $.each loop
}
});
if (ret === false) { // not good? let's leave function
return false;
}
//other logic ...
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/391077.html
標籤:javascript 查询
