Я пытаюсь добавить результат для объекта, используя цикл forEach. Я вижу записи, когда я console.log результатов, но когда я пытаюсь использовать их для других частей моего кода, я получаю пустой объект.
Я получил ошибку, ранее сообщая мне, что объектИмя (результаты) не было определено. Я переместил объект за пределы функции, и теперь я просто возвращаю пустой объект, когда пытаюсь вернуть значения объекта.
Сначала я попробовал это сделать:
let results = {};
// Check for all videos in cache (returns [])
const findAllVidsInCache = (videoArray) => {
videoArray.forEach(video => {
check(video).then(res => {
// resultsArray.push(res);
results[video] = res;
return results;
});
});
return results;
}
Затем япопробовал это:
let results = {};
// Check for all videos in cache (returns [])
const findAllVidsInCache = (videoArray) => {
videoArray.forEach(video => {
check(video).then(res => {
// resultsArray.push(res);
results[video] = res;
return results;
});
});
let values = Object.values(results);
return values;
}
Но я все еще продолжаю получать пустой объект, когда вызывается функция (я использую devTools для вызова функции, поэтому ничто больше не должно мешать ей).
То, что я ищу, и то, что я вижу в консоли при входе в консоль, это объект, который выглядит примерно так:
'video1': false,
'video2': false,
'video3': false,
'video4': true,
'video5': false,
...
До 12 видео.
Есть идеи, что я здесь не так делаю?