Я не уверен, что вы ищете, но это был бы правильный способ обернуть обещание:
function slowFunction(par) {
return new Promise(resolve => {
var sum = 0
for (let i = 0; i < 5; i++) {
setTimeout(function () {
sum += i ;
resolve(sum);
}, Math.random() * 1000)
}
})
}
async function main() {
const i = await slowFunction()
console.log(i)
}
main()
Без использования asyc / await:
function slowFunction(par) {
return new Promise(resolve => {
var sum = 0
for (let i = 0; i < 5; i++) {
setTimeout(function () {
sum += i ;
resolve(sum);
}, Math.random() * 1000)
}
})
}
slowFunction().then(value => console.log(value))