IDBIndex.locale
Expérimental: Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.
La propriété en lecture seule locale
, rattachée à l'interface IDBIndex
, fournit la locale de l'index (par exemple en-US
, ou pl
) si une valeur locale
a été fournie lors sa création (voir le paramètre d'options pour createIndex()
). On notera que cette propriété renvoie toujours la locale courante utilisée par l'index. Autrement dit, elle ne renvoie jamais "auto"
.
Valeur
Une chaîne de caractères.
Exemples
Dans l'exemple qui suit, on ouvre une transaction et un magasin d'objets puis on récupère l'index lName
d'une base de données de contacts. On utilise ensuite un curseur sur l'index en utilisant IDBIndex.openCursor
, ce qui est similaire à l'ouverture d'un curseur directement sur un objet ObjectStore
avec IDBObjectStore.openCursor
, mais qui permet de trier les enregistrements renvoyés selon l'index et pas selon la clé primaire.
La valeur locale
est affichée dans la console.
function displayDataByIndex() {
tableEntry.innerHTML = "";
const transaction = db.transaction(["contactsList"], "readonly");
const objectStore = transaction.objectStore("contactsList");
const monIndex = objectStore.index("lName");
console.log(monIndex.locale);
monIndex.openCursor().onsuccess = function (event) {
const cursor = event.target.result;
if (cursor) {
const 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 résultats ont été affichés.");
}
};
}
Spécifications
Cette propriété ne fait partie d'aucune spécification.
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
- Utiliser l'API IndexedDB
- Initier des transactions :
IDBDatabase
- Utiliser des transactions :
IDBTransaction
- Définir un intervalle de clés :
IDBKeyRange
- Récupérer et modifier les données :
IDBObjectStore
- Utiliser les curseurs :
IDBCursor
- Exemples : Notifications d'une liste de tâches (voir l'exemple qui fonctionne)