Naf*_*Joy 1 javascript asynchronous promise ecmascript-6 arrow-functions
我正在尝试打印
['第一个电话!','第二个电话!' ]
我的代码:
function get(apiCalls) {
return Promise.all(apiCalls)
}
//------------ START
let promise = get([
() => Promise.resolve("First call!"),
() => Promise.resolve("Second call!")
]);
if (promise) {
promise.then((result) => result).catch((err) => console.log(err));
}
//------------ END
Run Code Online (Sandbox Code Playgroud)
但我得到输出:
[ [功能], [功能] ]
从START到END的代码片段不能更改
您正在将一组函数传递给Promise.all,但它需要一组承诺。要么调用函数:
return Promise.all(apiCalls.map(f => f()))
Run Code Online (Sandbox Code Playgroud)
或通过承诺:
let promise = get([
Promise.resolve("First call!"),
Promise.resolve("Second call!")
]);
Run Code Online (Sandbox Code Playgroud)