Я работаю над кодом и однажды запутался.Хотя я могу пройти через это каким-то другим способом.Тем не менее мне не хватает объяснения фактического состояния.Вот мой фрагмент кода:
var myFlag = true;
if (anyVar == null) {
// some code
} else {
$.each(anyVar, function(key, value){
if (myDefinedId == value.id) {
swal({
title: "Warning",
text: "Are your sure?",
icon: "warning",
buttons: true,
dangerMode: true,
}).then((value) => {
if (value) {
// some code
} else {
myFlag = false;
swal("Happy Shopping!!!", {
buttons: false,
});
setTimeout(function () {
swal.close()
}, 1500);
}
});
}
});
}
if (myFlag) {
// execute this
}
Мой вопрос здесь заключается в том, что когда myDefinedId == value.id
swal
работает, но прежде чем я отправлю команду на подтверждение, то есть then
, выполнение длится до последнегоif
условие, где оно найдено myFlag
установлено как true
.
Разве подтверждение не должно останавливать выполнение всего кода?