files/en-us/web/api/idbindex/getall/index.md
{{ APIRef("IndexedDB") }}
The getAll() method of the {{domxref("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)
getAll(options)
The getAll() method can take separate parameters or a single options object containing the parameters as properties.
The parameters can include:
query {{optional_inline}}
null or not specified, the browser will use an unbound key range.count {{optional_inline}}
0 or greater than 2^32 - 1 a {{jsxref("TypeError")}}
exception will be thrown.If an object parameter is specified, its properties can include:
query {{optional_inline}}
query definition.count {{optional_inline}}
count definition.direction {{optional_inline}}
next
nextunique
prev
prevunique
An {{domxref("IDBRequest")}} object on which subsequent events related to this operation are fired.
If the operation is successful, the value of the request's {{domxref("IDBRequest.result", "result")}} property is an {{jsxref("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 {{domxref("DOMException")}} of the following types:
TransactionInactiveError {{domxref("DOMException")}}
InvalidStateError {{domxref("DOMException")}}
count parameter is not between 0 and 2^32 - 1, inclusive.const myIndex = objectStore.index("index");
const getAllRequest = myIndex.getAll();
getAllRequest.onsuccess = () => {
console.log(getAllRequest.result);
};
{{Specifications}}
{{Compat}}