如何推迟内部函数的返回?

时间:2015-10-16 08:03:27

标签: javascript ajax

我有一个函数,只有在调用其内部函数后才能返回。如何?请检查以下代码 -

function a() {
  function b() {
  }
return something//this something has to be returned only after function b is called. b is called from another file.
}

1 个答案:

答案 0 :(得分:1)

您应该使用something作为b的回调,然后它会按您的意愿运作。另一种方法是使用承诺:

var promise = new Promise(function(resolve, reject) {
  // run function b

  if (/* everything turned out fine */) {
    resolve();
  } else {
    reject();
  }
});

如果履行承诺,您可以使用then

promise.then(function(result) {
  return something;
}, function(err) {
  console.log("Failed");
});