Jquery 无法调用异步并等待创建索引数据库

Jquery failing to call async and await for indexed db creation

我已经编写了以下代码来创建一个工作正常的索引数据库,但我正在按如下方式使函数异步

async function createDb() {
  var request = indexedDB.open("myDB", "1")
   request.onsuccess = function (e) {
   return request.result; // Tried await return request.result
  }
} 

在我看来document.ready我调用如下

async function CreateDataBase() {
    const result = await createDb();
    console.log(result);
 }

但有些它总是返回 null,我认为调用甚至在 async 和 await 之前就结束了。如何正确调用异步和等待。同样在创建数据库之前,我想检查数据库是否存在然后创建

我写了如下内容,我想在创建数据库之前调用它并创建它 db 不存在。

function dbExists() {
var dbExists = true;
var request = indexedDB.open("myDB");
request.onupgradeneeded = function (e) {
    e.target.transaction.abort();
    dbExists = false;
}
return dbExists;
}

这里有一些示例代码供您参考:

function open(name, version) {
  return new Promise((resolve, reject) => {
    const request = indexedDB.open(name, version);
    request.onsuccess = (event) => resolve(event.target.result);
    request.onerror = (event) => reject(event.target.error);
  });
}

open('myDatabase', 1).then(db => {
  console.log('opened database');
  // do stuff here with db
}).catch(console.error);