Javascript 通过node.js中的回调函数传递变量

Javascript 通过node.js中的回调函数传递变量,javascript,json,node.js,Javascript,Json,Node.js,我昨天发布了这个问题,但我想我只是把每个人都弄糊涂了。我得到的回答是,你的问题到底是什么?因此,我今天正在扩展和重新发布 以下node.js代码段来自文件accounts.js,该文件位于路径/lib中的ETrade api库中。它应该返回json,其中包含关于经过身份验证的用户帐户的数据。认证部分工作得很好。我不清楚这个函数的最后一行到底在做什么: this._run(actionDescriptor,{},successCallback,errorCallback); 十年前,我最后一次编

我昨天发布了这个问题,但我想我只是把每个人都弄糊涂了。我得到的回答是,你的问题到底是什么?因此,我今天正在扩展和重新发布

以下node.js代码段来自文件accounts.js,该文件位于路径/lib中的ETrade api库中。它应该返回json,其中包含关于经过身份验证的用户帐户的数据。认证部分工作得很好。我不清楚这个函数的最后一行到底在做什么:

this._run(actionDescriptor,{},successCallback,errorCallback);
十年前,我最后一次编写代码时,我们没有这个结构,我也不知道如何运行,谷歌搜索也没有任何帮助。下面是函数

exports.listAccounts=functionsuccessCallback,errorCallback{ var actionDescriptor={ 方法:获取, 单元:账户, 行动:会计清单, 是的, }; 这个._runactionDescriptor,{},successCallback,errorCallback; }; 十年前,我最后一次编写代码时,我们没有这个构造,我也不知道如何运行

这是指当前对象,进一步读取_run正是他们选择调用函数的地方

我没有使用此模块的经验,但粗略地看一下git repo,我怀疑您会希望像这样扩展您的app.js:

et.listAccounts(function(response) {
  console.log(response);
});
et.listAccounts(function(response) {
  console.log(response);
}, function(error) {
  console.log(error);
});
在javascript中,函数是一阶的,因此可以像变量一样传递。listAccounts需要一个传递给它的函数,当它完成时,它将使用一个参数调用它,如etrade.js中所示

还有一个函数errorCallback,与之非常相似,但在发生错误时调用。您可以这样展开上面的代码段:

et.listAccounts(function(response) {
  console.log(response);
});
et.listAccounts(function(response) {
  console.log(response);
}, function(error) {
  console.log(error);
});

_run不是js甚至node中的标准方法。它可能来自您用来获取数据的任何API。我们需要知道那是什么来理解它是什么does@slebetman是的,没错。非常感谢!我从来没有想过。控制台日志现在列出了8个对象,我将开始尝试分解其中的内容。我想这不会很难。console.logresponse说{'json.accountlistreponse':{response:[[Object],[Object],[Object],[Object],[Object],[Object],[Object],[Object],[Object]}这太可怕了。该属性中有一个点,因此您必须使用[…]而不是点符号来访问它。查看带有['json.accountListResponse']的对象内部的内容。response我尝试了以下方法:var listAccountsRes=['json.accountListResponse'].response;console.loglistAccountsRes和console日志表示它未定义。抱歉,输入错误,请使用response['json.accountListResponse']。函数response{…}块内的response。