如何知道函数何时完成

leo*_*ion 1 javascript jquery

有什么方法可以找出函数何时完成.我需要运行另一个函数,但只能在一个函数完成后运行.像这样......

$(document).ready(function(){});
Run Code Online (Sandbox Code Playgroud)

除了功能而不是文档.

uks*_*ksz 9

您可以创建承诺,也可以使用回调.

这是一个承诺的例子(它有成功(解决),拒绝(出错)):

var promise = new Promise(function(resolve, reject) {
  // do a thing, possibly async, then…

  if (/* everything is OK */) {
    resolve("Stuff worked!");
  }
  else { // something went wrong
    reject(Error("It broke"));
  }
});
Run Code Online (Sandbox Code Playgroud)

你这样使用它:

promise.then(function(result) {
  console.log(result); // "Stuff worked!"
}, function(err) {
  console.log(err); // Error: "It broke"
});
Run Code Online (Sandbox Code Playgroud)

这是一个回调的例子:

function giveMeAlert(callback) {
    alert('I am main function');
    callback();
}

giveMeAlert(function() {
    alert('I am a callback function.');
});
Run Code Online (Sandbox Code Playgroud)