繁体   English   中英

NodeJs中的这一行是什么意思?

[英]What does this line in NodeJs mean?

我想知道这些在NodeJ中要求行是什么意思。

 var debug = require('debug')('morgan')
 var deprecate = require('depd')('morgan')

我正在检查NodeJs中morgan包的index.js 通常只require一个参数(包)。

require返回包装中已定义的内容。 在上述情况下,它们是函数,因此第二个参数实际上是在调用函数。 如果将其分解,则将如下所示:

var debugFunctionFactory = require('debug');
var debug = debugFunctionFactory('morgan');
debug('this is a test debug command');

如果相关模块返回函数,则实现很容易。 并且在调试和弃用的情况下,它返回一个函数,该函数返回一个函数:

// Module code:
module.export = function(customName) {
  return function(message) {
    console.log(customName + ': ' + message);
  };
};

// Your code:
var foo = require('module'); // => function
var bar = foo('foobar');     // => function
bar('baz');                  // "foobar: baz"

// More concisely:
var foo = require('module')('foobar');  // => function
foo('baz');                             // "foobar: baz"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM