如何在 Javascript/Node.js 中访问函数的结果 [重复]

Posted

技术标签:

【中文标题】如何在 Javascript/Node.js 中访问函数的结果 [重复]【英文标题】:How to access result of function in Javascript/Node.js [duplicate] 【发布时间】:2020-05-25 03:25:38 【问题描述】:

我有以下几点:

result = foobar(randInt, function(err, result)

)

console.log(result);

foobar 函数由此从外部 api 获得随机响应。

这样写代码可以输出结果

result = foobar(randInt, function(err, result)
    console.log(result);
    )

它会输出结果,但如果我这样写

result = foobar(randInt, function(err, result)

    )

    console.log(result);

我收到undefined

如何访问函数的结果以便以后处理它

例如result += ' accepted

【问题讨论】:

【参考方案1】:

这是您使用回调样式函数时的问题。最好把它们转换成这样的promise

foobar(randInt) 
 return new Promise((resolve, reject) => 
   callyoufunctionhere(randInt, err, result => 
     if(err) reject(err);
     resolve(result);
   );
 ):


现在你可以像这样简单地使用它

const result = await foobar(randomInt);

确保在异步函数中调用我们。

【讨论】:

以上是关于如何在 Javascript/Node.js 中访问函数的结果 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Solana - 如何从 JavaScript / Node.js 中的本地密钥对获取帐户?

如何在 JavaScript node.js 中将 xml 文件解析为数组

如何使用 Node.js/JavaScript 合并两个按键值匹配的数组值

Node.js学习1~Node.js是什么?如何安装nodejs

如何使用 javascript/node js 从数据库中将图片动态加载到网页上

javascript/node.js 中的 JSONP 解析