在第一个函数完成后调用第二个函数

时间:2019-10-14 04:57:46

标签: javascript function

我有两个功能function1function2。我想在function2完成后调用function1,并想将function1的返回值用作function2的参数

当我调用这些函数时,function2首先执行

var a = function1();

function2(a);

我检查了这个答案:

Call a function after previous function is complete

但是我想从function1返回一个值并在function2中使用它。我该怎么办?

2 个答案:

答案 0 :(得分:0)

您可以像这样使用JavaScript CallBak:

var a;

function function1(callback) {
 console.log("First comeplete");
 a = "Some value";
 callback();
}
function function2(){
 console.log("Second comeplete:", a);
}


function1(function2);

或Java脚本承诺:

let promise = new Promise(function(resolve, reject) { 
  // do function1 job
  let a = "Your assign value"
  resolve(a);
});

promise.then(             

function(a) {
 // do function2 job with function1 return value;
 console.log("Second comeplete:", a);
},
function(error) { 
 console.log("Error found");
});

答案 1 :(得分:0)

您可以为此使用awaitasync

  function f1() {

        return "value"
    }

    async function f2() {

        let result = await f1();
        console.log(result);
    }

    f2();