Невозможно использовать асинхронное ожидание в фильтре массива - PullRequest
0 голосов
/ 09 октября 2019

Невозможно использовать async-await в фильтре массива!

Я попытался создать массив и выполнить итерацию, используя фильтр для добавления, если ответ успешен

var awardCodes = [1, 2, 3, 11];

function getPosts() {
    const response = fetch("https://jsonplaceholder.typicode.com/user");
    return response;
}

function test(awardCodes) {
    var arr = awardCodes.filter(checkCode);
    console.log(arr, awardCodes);
}

var checkCode = async (code) => {
    try {
        let res = await getPosts();
        if (res.status == 200) {
            console.log("true");
            return true;
        } else {
            console.log("false1");
            return false;
        }
    } catch (error) {
        console.log("false2");
        return false;
    }
    console.log("false3");
    return false;
}

test(awardCodes);

Я ожидаю, что результат будетпустой массив

...