Пишем код чище, используя паттерны деструктурирования
Вы, наверное, уже знакомы с деструктурированием в JavaScript. Оно пришло к нам в 2015 году в спецификации ES6, но если вам нужно освежить знания, то на сайте Mozilla можно почитать большую подробную статью, как это всё работает.
Но знать как работает совсем не то же, что знать как использовать. Вот три паттерна, которые помогут вам сделать код чище, надёжнее и читаемее!
1. Именованные аргументы функции
Именованные аргументы это альтернативный позиционным аргументам путь обработки параметров функции. Вместо того, чтобы указывать аргументы в строго определённом порядке, просто указывайте их имя. В Питоне, например, это выглядит так:
def sum(a=1,b=2,c=3):
return a+b+c
sum(b=5,a=10)
Видите? Порядок не важен, если вы явно указали имя параметра. Преимуществами по сравнению с позиционными аргументами является то, что:
- Можно опустить один или несколько параметров при вызове функции
- Порядок при передаче аргументов теперь не важен
- Код стал читаемее
Хотя нативно именованные аргументы в JavaScript не поддерживаются, мы можем использовать паттерн деструктурирования, чтобы добиться всех трёх преимуществ выше. Вот таким будет прошлый пример уже на JavaScript:
function sum({a = 1, b = 2, c = 3}) {
return a + b + c
}
sum({b: 10, a: 5}) // 5 + 10 + 3 = 18
Все цели достигнуты: можно не указывать c, порядок теперь не важен, и аргументы сопровождаются своими именами. Всё это возможно именно благодаря деструктурированию.