IDBObjectStore.count()
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La méthode count(), rattachée à l'interface IDBObjectStore, renvoie un objet IDBRequest et, dans un thread séparé, renvoie le nombre d'enregistrements qui correspondent à la clé ou à l'intervalle de clé (IDBKeyRange) passé en argument. Si aucun argument n'est fourni, la méthode renvoie le nombre total d'enregistrements contenus dans le magasin d'objets.
Note : Cette fonctionnalité est disponible via les Web Workers.
Syntaxe
var requete = ObjectStore.count(optionalKeyRange);
Paramètres
optionalKeyRange-
Une clé ou un intervalle de clé (
IDBKeyRange) qui indique le critère de comptage des enregistrements.
Valeur de retour
Un objet IDBRequest sur lequel seront déclenchés les différents évènements relatifs à l'opération.
Exceptions
Cette méthode peut déclencher une exception DOMException ayant un des types suivants :
| Exception | Description |
|---|---|
InvalidStateError |
L'objet IDBObjectStore a été supprimé. |
TransactionInactiveError |
La transaction associée à l'objet IDBObjectStore est inactive. |
DataError |
La clé ou l'intervalle de clé passé en argument est invalide. |
Exemples
Dans ce fragment de code, on crée une transaction, on récupère un magasin d'objets puis on compte le nombre d'enregistrements contenus dans ce magasin grâce à la méthode count(). Lorsque l'évènement associé au succès de l'opération est déclenché, on inscrit le résultat dans la console.
var transaction = db.transaction(["fThings"], "readonly");
var objectStore = transaction.objectStore("fThings");
var countRequest = objectStore.count();
countRequest.onsuccess = function () {
console.log(countRequest.result);
};
Spécifications
| Specification |
|---|
| Indexed Database API 3.0> # ref-for-dom-idbobjectstore-count①> |
Compatibilité des navigateurs
Chargement…
Voir aussi
- Utiliser IndexedDB
- Initier une connexion :
IDBDatabase - Utiliser les transactions :
IDBTransaction - Définir un intervalle de clés :
IDBKeyRange - Récupérer et modifier les données :
IDBObjectStore - Utiliser les curseurs
IDBCursor - Exemple de référence : To-do Notifications (exemple live).