如何使用 IDBIndex.count() 按键范围统计数据大小?

How to count the data size by key range by using IDBIndex.count()?

我正在查看关于 IDBIndex.count() 的 MDN 文档,上面写着

var request = myIndex.count(key);
The key or key range that identifies the record to be counted.

这种情况下key的形式是什么?假设我想计算具有键 date 且范围从 2016010120160105?

的数据

您可以使用 IdbkeyRange。这是文档的 link - https://developer.mozilla.org/en-US/docs/Web/API/IDBKeyRange/bound

所以在你的情况下,解决方案是 -

var key = IDBKeyRange.bound(20160101, 20160105);
var request = myIndex.count(key);
reques.onsuccess = function(){
    var count = request.result;
}

希望这可以帮助您理解。尽管我建议您使用一些库,如 jsstore、dexie、couchdb 等。这将解决您的问题,因为 indexeddb 非常复杂,有时很难获得真实的东西。