Javascript 如何在For Await循环结束后调用回调函数

Javascript 如何在For Await循环结束后调用回调函数,javascript,typescript,Javascript,Typescript,我想在for wait循环结束后调用scan函数中的回调函数。我该怎么做 let personObj = {}; let personArray = []; async function scan() { for await (const person of mapper.scan({valueConstructor: Person})) { decrypt(person.name, function () { personArray.push

我想在for wait循环结束后调用scan函数中的回调函数。我该怎么做

let personObj = {};
let personArray = [];

 async function scan() {
    for await (const person of mapper.scan({valueConstructor: Person})) {
        decrypt(person.name, function () {
            personArray.push(personObj);
        });            
    }
}
例如,我想在循环后调用
console.log(personArray)

您将希望在
异步
函数中使用它:

function decryptAsync(value) {
    return new Promise(resolve => {
        decrypt(value, resolve);
    });
}
async function scan() {
    let personArray = [];
    for await (const person of mapper.scan({valueConstructor: Person})) {
        let personObj = await decryptAsync(person.name);
        personArray.push(personObj);
    }
    console.log(personArray)
}