Javascript 异步还是同步?我应该如何处理这些API调用?

Javascript 异步还是同步?我应该如何处理这些API调用?,javascript,asynchronous,promise,synchronous,Javascript,Asynchronous,Promise,Synchronous,到目前为止,我已经在这个rpcapi上做了很多工作,并且在更新变量时遇到了一些主要问题。我对js很陌生,并且已经像新手一样做了太长时间了。有人愿意告诉我这些应该如何使用吗 let x = ''; rpc.api.getConfig(function(err, resp) { console.log(err, resp); x = result; }); console.log(x); //COMES UP EMPTY :( 虽然如果我在日志上设置了一个超时,它会在几秒钟后显示出

到目前为止,我已经在这个rpcapi上做了很多工作,并且在更新变量时遇到了一些主要问题。我对js很陌生,并且已经像新手一样做了太长时间了。有人愿意告诉我这些应该如何使用吗

let x = '';
rpc.api.getConfig(function(err, resp) {
    console.log(err, resp);
    x = result;
});
console.log(x); //COMES UP EMPTY :(
虽然如果我在日志上设置了一个超时,它会在几秒钟后显示出来。我知道这是因为我没有立即收到回复,但我很难将其转化为承诺,或者我能想到的任何其他解决方案lol


非常感谢您的帮助。

由于您先使用控制台,然后才获得res,因此X的解决方案未定义


依赖于异步调用结果的所有内容都需要在回调函数中。伙计,你难道没有意识到标记这一点是多么无用吗。如果我能从另一篇文章,或者我读到的其他30篇文章中的任何一篇,解决这个问题,我会的。我不能把这些情况应用到这件事上。。你能吗?我已经重新开张了,但我不知道你期待什么。你在调用一个异步函数,你不能在返回的数据完成之前使用它。老实说,如果这是一个专业人士在同样的情况下会做的,那么就没有必要保持这个@barmar打开,因为我知道如何使用回调,我只是认为会有一个更有效的方法。不过谢谢你,我很高兴听到我至少没有做错什么D@TylerDurden具体来说,您发现使用回调的效率低下是什么?还有,你听说过Wait吗?
let x = '';
rpc.api.getConfig(function(err, resp) {
  console.log(err, resp);
  x = result;
  console.log(x);
});