История изменений
Исправление ChALkeR, (текущая версия) :
Первое — да, только обычным switch/case/break. Но по коду примерно так же выйдет.
switch (day) {
case "Mon": go(work); break;
case "Tue": go(relax); break;
case "Thu": go(iceFishing); break;
case "Fri":
case "Sat":
if (day === bingoDay) {
go(bingo);
go(dancing);
}
break;
case "Sun": go(church); break;
default: go(work);
}
eslint проконтролирует, что break нигде не забыт.
Именованные параметры функции — решаются передачей объекта и деструктуризацией. Плюс это совместимо с текущим подходом.
Пример:
function a({ abc, cde = 23, def, gh }) {
console.log(abc, cde, def, gh);
}
function b() {
const def = 20;
a({ def, gh: 42});
}
b();
object?.method() аналогичен object && object.method().
P.S. И да, ты можешь все приведённые мной примеры прямо в консоль браузера копипастить, если у тебя не ие, конечно. Для того, что в это не умеет — есть Babel, который всё приведёт в такой вид, что старые браузеры тоже поймут.
Исправление ChALkeR, :
Первое — да, только обычным switch/case/break. Но по коду примерно так же выйдет.
switch (day) {
case "Mon": go(work); break;
case "Tue": go(relax); break;
case "Thu": go(iceFishing); break;
case "Fri":
case "Sat":
if (day === bingoDay) {
go(bingo);
go(dancing);
}
break;
case "Sun": go(church); break;
default: go(work);
}
eslint проконтролирует, что break нигде не забыт.
Именованные параметры функции — решаются передачей объекта и деструктуризацией. Плюс это совместимо с текущим подходом.
Пример:
function a({ abc, cde = 23, def, gh }) {
console.log(abc, cde, def, gh);
}
function b() {
const def = 20;
a({ def, gh: 42});
}
b();
object?.method() аналогичен object && object.method().
Исправление ChALkeR, :
Первое — да, только обычным switch/case/break. Но по коду примерно так же выйдет.
switch (day) {
case "Mon": go(work); break;
case "Tue": go(relax); break;
case "Thu": go(iceFishing); break;
case "Fri":
case "Sat":
if (day === bingoDay) {
go(bingo);
go(dancing);
}
break;
case "Sun": go(church); break;
default: go(work);
}
eslint проконтролирует, что break нигде не забыт.
Именованные параметры функции — решаются передачей объекта и деструктуризацией. Плюс это совместимо с текущим подходом.
Пример:
function a({ abc, cde = 23, def, gh }) {
console.log(abc, cde, def, gh);
}
function b() {
const def = 20;
a({ def, gh: 42});
}
b();
object?.method аналогичен object && object.method().
Исправление ChALkeR, :
Первое — да, только обычным switch/case/break. Но по коду примерно так же выйдет.
switch (day) {
case "Mon": go(work); break;
case "Tue": go(relax); break;
case "Thu": go(iceFishing); break;
case "Fri":
case "Sat":
if (day === bingoDay) {
go(bingo);
go(dancing);
}
break;
case "Sun": go(church); break;
default: go(work);
}
eslint проконтролирует, что break нигде не забыт.
Именованные параметры функции — решаются передачей объекта и деструктуризацией. Плюс это совместимо с текущим подходом.
Пример:
function a({ abc, cde = 23, def }) {
console.log(abc, cde, def);
}
function b() {
const def = 20;
a({ def });
}
b();
object?.method аналогичен object && object.method().
Исправление ChALkeR, :
Первое — да, только обычным switch/case/break. Но по коду примерно так же выйдет.
switch (day) {
case "Mon": go(work); break;
case "Tue": go(relax); break;
case "Thu": go(iceFishing); break;
case "Fri":
case "Sat":
if (day === bingoDay) {
go(bingo);
go(dancing);
}
break;
case "Sun": go(church); break;
default: go(work);
}
eslint проконтролирует, что break нигде не забыт.
Именованные параметры функции — решаются передачей объекта и деструктуризацией. Плюс это совместимо с текущим подходом.
Пример:
function a({abc, cde = 23, def}) {
console.log(abc, cde, def);
}
function b() {
const def = 20;
a({def});
}
b();
object?.method аналогичен object && object.method().
Исправление ChALkeR, :
Первое — да, только обычным switch/case/break. Но по коду примерно так же выйдет.
switch (day) {
case "Mon": go(work); break;
case "Tue": go(relax); break;
case "Thu": go(iceFishing); break;
case "Fri":
case "Sat":
if (day === bingoDay) {
go(bingo);
go(dancing);
}
break;
case "Sun": go(church); break;
default: go(work);
}
eslint проконтролирует, что break нигде не забыт.
Именованные параметры функции — решаются передачей объекта и деструктуризацией. Плюс это совместимо с текущим подходом.
Пример:
function a({abc, cde = 23, def}) {
console.log(abc, cde, def);
}
function b() {
const def = 20;
a({def});
}
b();
`object?.method` аналогичен `object && object.method()`.
Исходная версия ChALkeR, :
Первое — да, только обычным switch/case/break. Но по коду примерно так же выйдет.
```js switch (day) { case «Mon»: go(work); break; case «Tue»: go(relax); break; case «Thu»: go(iceFishing); break; case «Fri»: case «Sat»: if (day === bingoDay) { go(bingo); go(dancing); } break; case «Sun»: go(church); break; default: go(work); } ```
eslint проконтролирует, что break нигде не забыт.
Именованные параметры функции — решаются передачей объекта и деструктуризацией. Плюс это совместимо с текущим подходом.
Пример: ```js function a({abc, cde = 23, def}) { console.log(abc, cde, def); }
function b() { const def = 20; a({def}); }
b(); ```
`object?.method` аналогичен `object && object.method()`.