IDBObjectStore.index()

Cet article nécessite une relecture technique. Voici comment vous pouvez aider.

Cet article nécessite une relecture rédactionnelle. Voici comment vous pouvez aider.

La méthode index() de l'interface IDBObjectStore renvoie l’accès à l'index dont le nom est passé en paramètre du magasin d'objet relié.

Note : This feature is available in Web Workers.

Syntaxe

objectStore.index(indexName);

Paramètre

name
Le nom de l'index auquel on veut accéder.

Renvoie

L'accès à un index.

Exceptions

InvalidStateError
Cette exception est lève si le magasin d'objet à été supprimé ou la transaction est terminé.
NotFoundError
Cette exception est lève s'il n'y as pas d'index portant ce nom (case sensible) sur ce le magasin d'objet.

Exemple

Dans l'exemple suivant, On ouvre une transaction pour avoir l'accès au magasin d'objet contactsList sur la connexion affecter à db.

La méthode index() de l'accés au magasin d'objet sert à avoir un accès à l'index lName du magasin d'objet.

function displayDataByIndex() {
  tableEntry.innerHTML = '';
  //ouverture de la transaction
  var transaction = db.transaction(['contactsList'], 'readonly');

  // Accès au magasin d'objets contactsList
  var objectStore = transaction.objectStore('contactsList');

  // Accès à l'index lName de contactsList
  var myIndex = objectStore.index('lName');
  // un curseur sur l'index
  var cursorRequest = myIndex.openCursor();
  cursorRequest.onsuccess = function(event) {
    var cursor = cursorRequest.result;
    if(cursor) {
      var tableRow = document.createElement('tr');
      tableRow.innerHTML =   '<td>' + cursor.value.id + '</td>'
                           + '<td>' + cursor.value.lName + '</td>'
                           + '<td>' + cursor.value.fName + '</td>'
                           + '<td>' + cursor.value.jTitle + '</td>'
                           + '<td>' + cursor.value.company + '</td>'
                           + '<td>' + cursor.value.eMail + '</td>'
                           + '<td>' + cursor.value.phone + '</td>'
                           + '<td>' + cursor.value.age + '</td>';
      tableEntry.appendChild(tableRow);  

      cursor.continue();
    } else {
      console.log('Toutes les entrées sont affichées.');    
    }
  };
};

Spécification

Spécification Statut Commentaire
Indexed Database API
La définition de 'index()' dans cette spécification.
Recommendation  

Compatibilité avec les navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support basique 23webkit
24
10 moz
16.0 (16.0)
10, en partie 15 7.1
Disponible dans workers (Oui) 37.0 (37.0) ? (Oui) ?
Fonctionnalité Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
Support basique 4.4 22.0 (22.0) 1.0.1 10 22 8
Disponible dans workers (Oui) 37.0 (37.0) (Oui) ? (Oui) ?

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : gadgino
 Dernière mise à jour par : gadgino,