С Express/Connect Я могу настроить функцию промежуточного программного обеспечения в любом из форматов:
function(req, res, next) // first argument will be a request
Или
function(err, req, res, next) // first argument will be an error
Переход от Express, Connect к базовому JavaScript: я не понимаю, как это возможно, чтобы иметь необязательный первый аргумент?
Как можно выразить, что моя функция сначала примет объект err
? Я думал, что это возможно, структура должна быть следующей:
function(req, res, next, err)
Я пропустил что-то основное здесь? Можно ли запросить, сколько аргументов ожидает функция?
Изменить: спасибо за ответы ниже. но функция промежуточного слоя передается для выражения, поэтому переменная arguments
недопустима. хотя length
верен... Думаю, я понял, было бы хорошо иметь подтверждение, так ли это. Пример ниже:
var fn;
fn = function (one, two) {};
console.log(fn.length); // 2
fn = function (one, two, three) {};
console.log(fn.length); // 3