我在Windows 8应用程序中使用IndexedDB,对于这两者我都很陌生。 我已经能够成功创build,读取,更新,从对象存储中删除对象,并创build了一对数据库和一些对象存储。 我的问题是如何列出我所有的对象存储和数据库? 我创build了一些不需要的虚假的,我想清理一些东西,但我不记得他们的名字。 也许这是肛门保留,但似乎应该可以列出所有的数据库和商店。 谢谢!
目前没有办法列举标准中的现有数据库。 Windows 8应用程序使用IE,IE不提供非标准的webkitGetDatabaseNames
方法。 您可以使用IE10中的选项对话框来清除数据库。
在标准中使用IDBDatabase实例的objectStoreNames方法定义存储在数据库中的商店。
在Chrome webkit中,有一个函数会返回所有的数据库名称,这个函数在Chrome 60( webkitgetdatabasenames )中不再可用:
indexedDB.webkitGetDatabaseNames().onsuccess = function(sender,args) { console.log(sender.target.result); };
另外还有一个函数可以将所有的对象存储在一个单独的数据库中,并在所有的浏览器中工作:
indexedDB.open(databaseName).onsuccess = function(sender, args) { console.log(sender.target.result.objectStoreNames); };