IndexedDB:无需迭代即可在特定条目上打开游标

IndexedDB: Open cursor on specific entry without iteration

在我的 indexedDB 数据库中,我需要在一个特定条目上打开游标,因为我想调用该条目上游标的 update 函数来更新存储在那里的对象的属性。

我目前的实现是遍历对象存储,直到光标指向具有给定键的对象,但由于我已经知道我要查找的对象的键,因此遍历似乎很浪费所有条目,当我也可以通过密钥获取它时。

有没有办法在 objectstore.get(_key_).openCursor() 这样的查询结果上打开游标?

注意:我知道我也可以使用 objectstore.put(...) 来更新特定值,但我尽量避免这种情况,因为如果创建新条目,这将是一个主要问题。

你可以做到 objectStore.openCursor(_key_), where _key_ is:

A key or IDBKeyRange to be queried. If a single valid key is passed, this will default to a range containing only that key. If nothing is passed, this will default to a key range that selects all the records in this object store.