Вы можете использовать простой прием:
switch (feature.id) {
case 'marker':
...
break;
case (feature.id.includes('alternative') ? feature.id : !feature.id):
// your code here
break;
case 'connectionMarker':
...
break;
}
Поскольку feature.id
всегда является строковым значением, !feature.id
всегда будет возвращать false.Следовательно, если feature.id
включает «альтернативу», эта строка:
case (feature.id.includes('alternative') ? feature.id : !feature.id):
становится:
case feature.id:
, что всегда будет иметь место (как feature.id === feature.id
).В противном случае строка оценивается как:
case 0:
, которая будет пропущена интерпретатором.