Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js-如何获取回调函数';s变量不起作用了?_Node.js_Callback - Fatal编程技术网

Node.js-如何获取回调函数';s变量不起作用了?

Node.js-如何获取回调函数';s变量不起作用了?,node.js,callback,Node.js,Callback,balance.js var CoinStack = require('coinstack-sdk-js') var accessKey = 'c7dbfacbdf1510889b38c01b8440b1'; var secretKey = '10e88e9904f29c98356fd2d12b26de'; var client = new CoinStack(accessKey, secretKey); client.getBalance(address, function(err, bal

balance.js

var CoinStack = require('coinstack-sdk-js')
var accessKey = 'c7dbfacbdf1510889b38c01b8440b1';
var secretKey = '10e88e9904f29c98356fd2d12b26de';
var client = new CoinStack(accessKey, secretKey);

client.getBalance(address, function(err, balance) {
    console.log('balance', balance)
});
我有一个这样的代码,然后我想得到var平衡的功能

我不知道该怎么办,我想要固定的代码


我需要你的帮助

你不能,考虑使用这样的承诺:

var CoinStack = require('coinstack-sdk-js')
var accessKey = 'c7dbfacbdf1510889b38c01b8440b1';
var secretKey = '10e88e9904f29c98356fd2d12b26de';
var client = new CoinStack(accessKey, secretKey);
let balancePromise = new Promise((resolve, reject)=>{

   client.getBalance(address, function(err, balance) {
     if(err) 
        reject(err)
     else 
       resolve(balance);
   });
})

// how to get balance value
balancePromise.then((balance)=>{
  console.log('balance', balance)
}).catch((error)=>{
  console.log('error', error)
})

承诺很好,但与OP的问题无关。你仍然会在回调中得到
余额
。是的,这就是问题的答案。没有办法。这就是OP需要了解的。这才是他们问题的真正答案。您唯一可以使用
平衡的地方是在回调函数中或从回调函数中调用的函数中。这就是异步代码在Javascript中的工作方式。习惯它,设计你的代码,让它以这种方式工作,停止寻找绕过它的方法。任何需要
balance
的代码都应该在回调函数中,或者在回调函数中调用,然后将
balance
传递给它。