以下链接语句在JavaScript中的含义是什么?

时间:2014-11-13 10:45:09

标签: javascript node.js commonjs

我找到了这段代码而我在阅读它时遇到了麻烦:

require('happy module')
    .login('storage', { id:7, type:'foo' })(a, b, function c (err) { return err });

1)require('happymodule')是一个函数,它接受一个字符串参数并返回一个对象。

2)使用该对象,我调用login方法,并传递两个参数,一个字符串和一个对象

3)返回一个我传递三个参数的函数     (a,b,函数c(错误){return err});

这是对的吗?

2 个答案:

答案 0 :(得分:2)

  

1)require('happymodule')是一个带有一个字符串参数的函数   并返回一个对象。

是的,但仅仅因为happymodule模块决定导出一个对象,它可能已经导出了一个函数。

  

2)使用该对象,我调用login方法,并传递两个   参数,字符串和对象

是的,这是正确的

  

3)返回一个我传递三个参数的函数   (a,b,函数c(错误){return err});

是的,这也是正确的!

这里有一点清洁:

var happy = require('happymodule');

var login = happy.login('storage',{ id:7, type:'foo' });

login(a, b, function c(err){
  return err
});

答案 1 :(得分:0)

如果有意义的话,可以这样写:

var happy = require ('happyModule');
var login = happy.login;
var loginConfig = {
  id: 7,
  type: 'foo'
};

var useless = login('storage', loginConfig);

useless(a, b, function(err) {
  return err;
});