Сокращение для пустой функции в Node.js

В JS существует стенограмма для пустого объекта, который равен {}. Есть ли сокращение для пустого function в JS?

Причина в том, что, поскольку функции являются объектами первого класса, мы чаще используем их как аргументы, но передача в пустую функцию в лучшем случае уродлива.

var foo = baz(function(){});

Чтобы объявить функцию, в какой-то точке мы должны объявить function(){}.

Я бы хотел, чтобы больше API Node.js требовало передачи функции (обратного вызова), поэтому API не обманывает синхронно. Возможно, одним шагом в этом направлении было бы создание сокращений для пустых функций-заполнителей.

Ответы

Ответ 1

Нет, нет. С ES6 вы можете использовать функцию стрелки: ()=>{}, которая немного короче.

Если вам действительно нужно это очень часто (вы не должны?!), вы можете объявить его сами:

function noop(){}

а затем повторите это. Если вы не хотите загромождать свою область видимости, вы также можете использовать функцию Function.prototype (sic!), Которая ничего не возвращает, но постоянно возвращает undefined, но это на самом деле дольше, чем выражение вашей функции.

Ответ 2

ES6 один может быть

   const noop = () => {};

Будьте осторожны, если используете Babel, так как он не передает его правильно, вместо этого используйте это.

   const noop = () => ({});

Посмотрите этот твит о том, почему фигурные скобки важны https://twitter.com/_ericelliott/status/601420050327711744?lang=en

Ответ 3

Если вы используете lodash, есть метод noop.