IDBIndex.getAll()
The getAll()
method of the IDBIndex
interface retrieves all objects that are inside the index.
There is a performance cost associated with looking at the value
property
of a cursor, because the object is created lazily. To use a feature
like getAll()
, the browser has to create all the objects at once. If you
are just interested in looking at each of the keys, for instance, it is more efficient
to use a cursor. If you are trying to get an
array of all the objects in an object store, though, you should
use getAll()
.
Syntax
var getAllKeysRequest = IDBIndex.getAll();
var getAllKeysRequest = IDBIndex.getAll(query);
var getAllKeysRequest = IDBIndex.getAll(query, count);
Parameters
- query Optional
-
A key or an
IDBKeyRange
identifying the records to retrieve. If this value is null or missing, the browser will use an unbound key range. - count Optional
-
The number of records to return. If this value exceeds the number of records in the query, the browser will only retrieve the queried records. If it is lower than
0
or greater than2^32 - 1
aTypeError
exception will be thrown.
Return value
An IDBRequest
object on which subsequent events related to this
operation are fired.
Exceptions
This method may raise a DOMException
of the following types:
TransactionInactiveError
DOMException
-
Thrown if this
IDBIndex
's transaction is inactive. InvalidStateError
DOMException
-
Thrown if the
IDBIndex
has been deleted or removed.
A TypeError
exception is thrown if the count
parameter is
not between 0
and 2^32> - 1
included.
Example
var myIndex = objectStore.index('index');
var getAllRequest = myIndex.getAll();
getAllRequest.onsuccess = function() {
console.log(getAllRequest.result);
}
Specifications
Specification |
---|
Indexed Database API 3.0 # ref-for-dom-idbindex-getall① |
Browser compatibility
BCD tables only load in the browser
See also
- Using IndexedDB
- Starting transactions:
IDBDatabase
- Using transactions:
IDBTransaction
- Setting a range of keys:
IDBKeyRange
- Retrieving and making changes to your data:
IDBObjectStore
- Using cursors:
IDBCursor
- Reference example: To-do Notifications (view example live.)