--- title: IDBIndex.locale slug: Web/API/IDBIndex/locale translation_of: Web/API/IDBIndex/locale ---
La propriété locale
de l'interface {{domxref("IDBIndex")}} renvoie la localisation de l'index (par exemple fr, ou en-US
) si la localisation à été spécifie lors de la mise en place de l'index
(voir les paramètres {{domxref("IDBObjectStore.createIndex")}}).
{{note("Cette propriété renvoie la localisation utilisé par l'index. En d'autres termes, elle ne renverras jamais 'auto'.")}}
var indexLocalisation = myIndex.locale;
Une {{domxref("DOMString","chaîne de caractère")}} représentant la localisation courante de l'index.
Dans l'exemple suivant on ouvre une transaction puis un magasin d'objet et enfin l'index lName
.
La valeur de la propriété Locale
est affichée sur la console.
Finalement, On itère sur tous les enregistrements pour en insérer les données dans un tableau HTML. En utilisant la méthode {{domxref("IDBIndex.openCursor")}} qui travaille de la même façon que la méthode {{domxref("IDBObjectStore.openCursor")}} de l'{{domxref("IDBObjectStore","accès")}} au magasin d'objet sauf que les enregistrements sont renvoyés dans l'ordre de l'index et non celui du magasin d'objet.
function displayDataByIndex() { tableEntry.innerHTML = ''; //ouvre un transaction var transaction = db.transaction(['contactsList'], 'readonly'); //accés au magasin d'objet var objectStore = transaction.objectStore('contactsList'); //on récupère l'index var myIndex = objectStore.index('lName'); //on affiche la propriété locale sur la console console.log(myIndex.locale); //un curseur qui itère sur l'index myIndex.openCursor().onsuccess = function(event) { var cursor = event.target.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('Tous les enregistrements ont été affichés.'); } }; };
Note : Pour un exemple de travail complet, voir notre To-do Notifications app (view example live).
Ne fait actuellement partie d'aucune spécification.
{{Compat("api.IDBIndex.locale")}}