JS Переменной не получается присвоить значение
Пишу расширение для хрома, в background.js ищу данные в indexedDB через курсор, но функция всегда возвращает 'not found', притом что в базе есть сравниваемое значение, как будто переменной searchResult не присваивается значение. Пробовал объявлять переменную вне функции не помогает. Также пробовал сохранять не в базе, а в обычном массиве и искать там, результат тот же.
function SearchPlayerInDB(userNick) {
let searchResult = 'not found';
let request = db.transaction("players", "readwrite").objectStore('players').openCursor();
request.onsuccess = function(event) {
let cursor = event.target.result;
if (cursor) {
if (cursor.value === userNick) {
searchResult = "found";
}
cursor.continue();
}
}
return searchResult;
}
function SearchPlayerInArray(userNick) {
searchResult = 'not found';
for(i=0; i<=players.length; i++) {
if(players[i] === userNick) {
searchResult = 'found';
}
}
return searchResult;
}