The proposed getAllKeys()
method of the IDBIndex
interface would instantly retrieve the keys of all objects inside the index, setting them as the result
of the request object.
Syntax
var allKeysRequest = IDBIndex.getAllKeys(); var allKeysRequest = IDBIndex.getAllKeys(query); var allKeysRequest = IDBIndex.getAllKeys(query, count);
Parameters
- 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 than232-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:
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 232-1
included.
Example
var myIndex = objectStore.index('index'); var getAllKeysRequest = myIndex.getAllKeys(); getAllKeysRequest.onsuccess = function() { console.log(getAllKeysRequest.result); }
Specification
Specification | Status | Comment |
---|---|---|
Indexed Database API 2.0 The definition of 'getAll()' in that specification. |
Editor's Draft | Initial definition. |
Indexed Database API 2.0 The definition of 'getAll()' in that specification. |
Editor's Draft |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Initial release | 48 | 44.0 (44.0) [1] | No support | 35 | No support |
Indexed Database 2.0 | 58 | ? | ? | 45 | ? |
Feature | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Initial release | 48 | 48 | 44.0 (44.0) [1] | No support | 35 | No support |
Indexed Database 2.0 | 58 | 58 | ? | ? | 45 | ? |
[1] Was available since Firefox 24 behing the pref dom.indexedDB.experimental
, off by default.
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.)