Рубрики
Без рубрики

Как упростить ваш код с оператором распространения

Мэтта Гранмо Как упростить свой код с помощью SPRECTE APERACERECTECT, сотрудник, который учится любить JavaScript, запрашиваю, был ли простым способом взять такую функцию: и обратный бар: Parsebar (Bar), когда плана пройдена. Но каким-то образом предотвратить возвратный бар

Мэтта Гранмо

Недавно сотрудник, который учится любить JavaScript, пришел, спросил, был ли простой способ сделать такую функцию:

и вернуть Бар: Parsebar (Bar) Когда бар передается. Но каким-то образом предотвратить возвращение бар как undefined Когда бар не передается, поскольку некоторые употребления этого в кодовой базе не передают его. Он был специально ищет способ сделать это, что не потребует какого-либо рефакторинга (например, изменения из неявного возврата в полнофункциональный корпус функции, используя, если/else, создавая отдельную функцию, чтобы сделать фильтрацию определенных значений и т. Д.).

После какого-то взлома в консоли JavaScript я понял, что возможно следующее:

Вот конденсированный пример, чтобы бросить в консоль, если вы хотите:

Это возможно из-за двух вещей. Во-первых, тот факт, что, хотя оператор распространения не может происходить где-нибудь в качестве токена его можно применять буквально любой тип данных на весь язык .

Обычно известно, что Объект , Массив С Установить И подобные являются итеративными. Тот факт, что все Примитивный Типы также являются действительными операндами оператора распространения позволяет нам распространяться буквально любой Выражение, поскольку все выражения будут оценивать некоторое значение после выполнения.

Если вы не верите мне, добавьте следующее в консоли:

Второе, что помогает нам, это то, что распространение «пустой» значение приводит к не-OP.

Два быстрых примера того, как эта задняя аллея JavaScript может использоваться:

  • Охранные выражения (jsx a a jsx, а также то, что использовалось для решения оригинальной проблемы, упомянутой в этом посте): ... (foo && parsefoo (foo))
  • Выражения «по умолчанию»: ... (quotalue

Более общий способ ссылаться на все эти вещи могут быть «выражениями распространения». Однако теперь я хотел бы сказать «выражения распространения» не как существительное, а в качестве предложения. Идите с знанием, которые вы можете распространить все Выражения! ?

Оригинал: “https://www.freecodecamp.org/news/spread-expressions-6ad7d5b9b1d4/”