Javascript Node.js-将上下文传递到函数属性中的嵌套对象

Javascript Node.js-将上下文传递到函数属性中的嵌套对象,javascript,node.js,Javascript,Node.js,我需要在Node.js中创建一个名称间隔清晰的模块,通过require()将其分解为子模块,并将根上下文/范围一直传递给名称空间中的方法 // index.js var SDK = function(data){ this.data = data; }; SDK.prototype.Utilities = require('./utilities'); module.exports = function(data) { return new SDK(

我需要在Node.js中创建一个名称间隔清晰的模块,通过
require()
将其分解为子模块,并将根上下文/范围一直传递给名称空间中的方法

// index.js

  var SDK = function(data){
      this.data = data;
  };

  SDK.prototype.Utilities = require('./utilities');

  module.exports = function(data) {
      return new SDK(data);
  };

// utilities.js

  module.exports = {
       callAPI: function() {
            console.log(this.data);
       }  
  };   


// Use-case (somewhere in the node.js app...)

  var SDK = require('./index')("this is some data");
  SDK.Utilities.callAPI();  
  // Should return "this is some data"
例如:

SDK
中的
需要在
SDK.Utilities.callAPI()中访问该
,如下所示<代码>实用程序
是我指的名称空间

我知道javascript
bind()
call()
技术,但我不确定在这种特殊情况下如何使用它们。

您应该使用apply或call


它们在给定的范围内运行函数。

OK-最后一件事,您能否添加一个示例,说明您希望如何使用它?伪代码很好。我刚刚将用例添加到代码的底部。我知道这一点。但我不知道如何通过
require()
将模块划分为子模块。你能不能提供一个书面的例子,说明在我的具体案例中这是如何运作的?