, поскольку вы выполняете только if-проверки, почему бы вам не сразу оценить и накопить при каждом результате + = ..?
result = false;
for (...) {
if (condition) result = true;
}
return result;
или даже лучше: ранний выход следующим образом:
result = true;
for (...) {
if (condition) return true;
}
return false;
, примененный к исходному коду, это сделает вашу функцию похожей на это:
function(date) {
var drop_destinazione = jQuery('[name="destinazione"]').val();
var dateCorfu = ["2020-07-16","2020-07-23","2020-07-30",
"2020-08-06","2020-08-13","2020-08-20"];
var dateZante = ["2020-07-17","2020-07-24","2020-07-31",
"2020-08-07","2020-08-14"];
var datePag = ["2020-07-18","2020-07-25","2020-08-01","2020-08-08"];
var slice = date.toISOString().slice(0, 10);
if (drop_destinazione == 'Corfù') {
for (var i = 0; i < dateCorfu.length; i++) {
if (slice == dateCorfu[i]) return true;
}
}
else if(drop_destinazione == 'Zante') {
for (var i = 0; i < dateZante.length; i++) {
if (slice == dateZante[i]) return true;
}
}
else if(drop_destinazione == 'Pag') {
for (var i = 0; i < datePag.length; i++) {
if (slice == datePag[i]) return true;
}
}
else { console.log('no destination selected'); }
return false;
}
однако есть шаги, которые вы можете предпринять, чтобы Код менее повторяющийся:
function(date) {
var drop_destinazione = jQuery('[name="destinazione"]').val();
var slice = date.toISOString().slice(0, 10);
var allowed = {
Corfù: ["2020-07-16","2020-07-23","2020-07-30",
"2020-08-06","2020-08-13","2020-08-20"],
Zante: ["2020-07-17","2020-07-24","2020-07-31",
"2020-08-07","2020-08-14"],
Pag: ["2020-07-18","2020-07-25","2020-08-01",
"2020-08-08"],
};
if (allowed[drop_destinazione] == undefined) {
console.log('no destination selected');
return false;
}
return allowed[drop_destinazione].indexOf(slice) !== -1;
}
Конечно, имя свойства "Corfù" выглядит не слишком красиво, однако "drop_destinazione" кажется выпадающим списком, они имеют значение и метку (см. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select). вы должны сделать значения простыми строками, такими как "corfu":
<select>
<option value="corfu">Corfù</option>
...
</select>
если вы сделаете это так, вы можете сделать разрешенный индекс более приятным:
var allowed = {
corfu: ["2020-07-16","2020-07-23","2020-07-30",
"2020-08-06","2020-08-13","2020-08-20"],
zante: ["2020-07-17","2020-07-24","2020-07-31",
"2020-08-07","2020-08-14"],
pag: ["2020-07-18","2020-07-25","2020-08-01",
"2020-08-08"],
};
надеюсь, это поможет!