В Javascript функции являются «первым классом», что означает, что они могут передаваться как любые другие значения.
require('debug')
возвращает функцию. Например, экспорт пакета debug
npm по умолчанию является функцией, а не объектом.
Эта функция затем вызывается со строкой "express:router:route"
Функция, которая принимает в каком-то состоянии или конфигурации и возвращает функцию, основанную на этом состоянии или конфигурации, частичное применение . Это не случай частичного применения, однако, это просто сокращение для:
var debug = require('debug');
debug('express:router:route');
require
не функция, которая предназначена для частичного применения, это просто означает, что пакет debug
возвращает функцию и выполняется на месте.