diff options
Diffstat (limited to 'files/fr/web/api/idbindex/getall/index.md')
-rw-r--r-- | files/fr/web/api/idbindex/getall/index.md | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/files/fr/web/api/idbindex/getall/index.md b/files/fr/web/api/idbindex/getall/index.md new file mode 100644 index 0000000000..f9ed6d0d8f --- /dev/null +++ b/files/fr/web/api/idbindex/getall/index.md @@ -0,0 +1,101 @@ +--- +title: IDBIndex.getAll() +slug: Web/API/IDBIndex/getAll +tags: + - API + - IDBIndex + - IndexedDB + - Méthode + - Reference +translation_of: Web/API/IDBIndex/getAll +--- +<p>{{ APIRef("IndexedDB") }}</p> + +<div> +<p>La méthode <strong><code>getAll()</code></strong> de l'interface {{domxref("IDBIndex")}} fait une requête ({{domxref("IDBRequest")}}) qui renvoie un tableau ordonné suivant les clés, des clones structurés des enregistrements de l'index relié ({{domxref("IDBIndex")}}). On peut limiter le nombre d'enregistrements en les filtrant suivant leurs clés ou en paramétrant le compteur.</p> +</div> + +<p>On peut comparer cette méthode avec une recherche par curseur. Effectivement, il est plus intéressant si l'on veut accéder aux enregistrements un par un d'utiliser un {{domxref("IDBCursor","curseur")}}, les clones structurés des valeurs seront faits un par un. Mais si l'on veut un tableau des clones structurés des valeurs il vaut mieux utiliser <code>getAll()</code>, le moteur Gecko fera les clones structurés en une seule fois.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox">var getAllKeysRequest = IDBIndex.getAll(); +var getAllKeysRequest = IDBIndex.getAll(query); +var getAllKeysRequest = IDBIndex.getAll(query, count);</pre> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt>query {{optional_inline}}</dt> + <dd>Une clé ou un intervalle de clé ({{domxref("IDBKeyRange")}}) <strong>pour filtrer</strong>, seules les valeurs des enregistrements correspondant sont renvoyées. Par défaut toutes les clones structurés des enregistrements de l'index relié sont renvoyés.</dd> + <dt>count {{optional_inline}}</dt> + <dd>Le nombre d'enregistrement <strong>maximum renvoyés</strong>. Un nombre décimal sera tronqué. Zéro annule le compteur et toutes les valeurs sont retournées.</dd> +</dl> + +<h3 id="Valeur_de_retour">Valeur de retour</h3> + +<dl> + <dt>{{domxref("IDBRequest")}}</dt> + <dd>La propriété {{domxref("IDBRequest.result","result")}} de cette requête renvoie le tableau des clones structurés des enregistrements en cas de succès.</dd> +</dl> + +<h3 id="Exceptions">Exceptions</h3> + +<dl> + <dt><code>TransactionInactiveError</code></dt> + <dd>Cette {{domxref("DOMException","exception")}} est levée si la transaction ({{domxref("IDBTransaction")}}) est inactive.</dd> + <dt><code>DataError</code></dt> + <dd>Cette exception ({{domxref("DOMException")}}) est levée si la clé ou l'intervalle de clé ({{domxref("IDBKeyRange")}}) est invalide.</dd> + <dt><code>InvalidStateError</code></dt> + <dd>Cette exception ({{domxref("DOMException")}}) est levée si l'index à été supprimé.</dd> + <dt><code>TypeError</code></dt> + <dd>Cette exception ({{domxref("DOMException")}}) est levée si le compteur n'est pas un nombre positif.</dd> +</dl> + +<h2 id="Exemples">Exemples</h2> + +<pre class="brush: js">//on récupère l’accès à l'index +var myIndex = objectStore.index('index'); +//on fait une requête de recherche sur l'index +var getAllKeyRequest = myIndex.getAllKeys(); +//si la requête réussi +getAllKeysRequest.onsuccess = function() { + //on affiche le résultat sur la console + //~= [{key:'a',value:un_clone_structuré},{key:'2',value:un_clone_structuré},...] + console.log(getAllKeysRequest.result); +}</pre> + +<h2 id="Spécifications">Spécifications</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Spécification</th> + <th scope="col">État</th> + <th scope="col">Commentaires</th> + </tr> + <tr> + <td>{{SpecName('IndexedDB2', '#dom-idbindex-getall', 'getAll()')}}</td> + <td>{{Spec2('IndexedDB')}}</td> + <td>Définition initiale.</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2> + + + +<p>{{Compat("api.IDBIndex.getAll")}}</p> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li>{{domxref("IndexedDB_API.Using_IndexedDB","Utiliser IndexedDB")}}</li> + <li>{{domxref("IDBDatabase","Débuter une connexion")}}</li> + <li>{{domxref("IDBTransaction","Utilisé les transactions")}}</li> + <li>{{domxref("IDBKeyRange","Définir l'intervalle des clés")}}</li> + <li>{{domxref("IDBObjectStore","Accès aux magasins d'objets")}}</li> + <li>{{domxref("IDBCursor","Utiliser les curseur")}}</li> + <li>Exemple de référence: <a href="https://github.com/mdn/to-do-notifications/tree/gh-pages">To-do Notifications</a> (<a href="http://mdn.github.io/to-do-notifications/">view example live</a>.)</li> +</ul> |