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()
.
getAll()
getAll(query)
getAll(query, count)
An IDBRequest
object on which subsequent events related to this operation are fired.
If the operation is successful, the value of the request's result
property is an Array
of the values of all records matching the given query, up to the value of count
, if count
was supplied.
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.
const myIndex = objectStore.index("index");
const getAllRequest = myIndex.getAll();
getAllRequest.onsuccess = () => {
console.log(getAllRequest.result);
};