The getAllKeys() method of the IDBIndex interface instantly retrieves the primary keys of all objects inside the index, setting them as the result of the request object.


var allKeysRequest = IDBIndex.getAllKeys();
var allKeysRequest = IDBIndex.getAllKeys(query);
var allKeysRequest = IDBIndex.getAllKeys(query, count);


query Optional
A key or an IDBKeyRange identifying the keys to retrieve. If this value is null or missing, the browser will use an unbound key range.
count Optional
The number records to return. If this value exceeds the number of records in the query, the browser will only retrieve the first item. If it is lower than 0 or greater than 2^32 - 1 a TypeError exception will be thrown.

Return value

An IDBRequest object on which subsequent events related to this operation are fired.


This method may raise a DOMException of the following types:

Exception Description
TransactionInactiveError This IDBIndex's transaction is inactive.
InvalidStateError 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.


var myIndex = objectStore.index('index');
var getAllKeysRequest = myIndex.getAllKeys();
getAllKeysRequest.onsuccess = function() {


Indexed Database API 3.0 (Indexed DB 3.0)
# ref-for-dom-idbindex-getallkeys①

Browser compatibility

BCD tables only load in the browser

See also