Get to know MDN better
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
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().
The getAll() method can take separate parameters or a single options object containing the parameters as properties.
The parameters can include:
query OptionalA key or an IDBKeyRange identifying the records to retrieve. If this value is null or not specified, the browser will use an unbound key range.
count OptionalThe 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 than 2^32 - 1 a TypeError exception will be thrown.
If an object parameter is specified, its properties can include:
query OptionalSee the earlier query definition.
count OptionalSee the earlier count definition.
direction OptionalAn enumerated value specifying the direction in which the objects are traversed. Possible values are:
nextThe objects are traversed from the beginning, in increasing key order. This is the default value.
nextuniqueThe objects are traversed from the beginning, in increasing key order. For every key with duplicate objects, only the object closest to the start is yielded.
prevThe objects are traversed from the end, in decreasing key order.
prevuniqueThe objects are traversed from the end, in decreasing key order. For every key with duplicate objects, only the object closest to the start is yielded.
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 DOMExceptionThrown if this IDBIndex's transaction is inactive.
InvalidStateError DOMExceptionThrown if the IDBIndex has been deleted or removed.
TypeError DOMExceptionThrown if the count parameter is not between 0 and 2^32 - 1, inclusive.
| Indexed Database API 3.0 # ref-for-dom-idbindex-getall① |
Enable JavaScript to view this browser compatibility table.
This page was last modified on Oct 21, 2025 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.