javascript - promise 后的返回值

标签 javascript node.js promise q

我有一个 javascript 函数,我想返回在 return 方法之后得到的值。 比解释更容易看到

function getValue(file){
    var val;
    lookupValue(file).then(function(res){
       val = res.val;
    }
    return val;
}

用 promise 来做到这一点的最佳方式是什么。据我了解, return val 将在 lookupValue 完成之前返回,但我不能 return res.val 因为那只是从内部返回功能。

最佳答案

按照以下思路使用模式:

function getValue(file) {
  return lookupValue(file);
}

getValue('myFile.txt').then(function(res) {
  // do whatever with res here
});

(虽然这有点多余,但我敢肯定你的实际代码更复杂)

关于javascript - promise 后的返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22951208/

相关文章:

javascript - 使用 wrapAll 选择不同的元素 — jQuery

node.js - 无法加载资源: the server responded with a status of 431 (Request Header Fields Too Large)

javascript - Node Js async.apply 和 Javascript Apply

javascript - 在 Protractor 中使用带有 promise 的页面对象模式

javascript - 这是处理 JavaScript Promise 的正确方法吗?

javascript - 了解使用 AngularJS promises,它们将如何帮助解决这个问题

Javascript 替换方法在复选框 if/else 切换中不起作用

javascript - AJAX 回调中变量值错误

javascript - 函数的返回值总是未定义且顺序

javascript查找字符串并删除所有以下字符