IDBKeyRange.includes()

La méthode includes(), rattachée à l'interface IDBKeyRange, renvoie un booléen si la clé est contenue dans un intervalle de clé.

Note : Cette fonctionnalité est disponible via les Web Workers.

Syntaxe

js
myIncludesResult = myKeyRange.includes("A");

Paramètres

key

La clé dont on souhaite savoir si elle est dans l'intervalle.

Valeur de retour

Un booléen.

Exceptions

Cette méthode peut lever une exception DOMException de type DataError lorsque la clé fournie n'est pas une clé valide.

Exemples

js
var keyRangeValue = IDBKeyRange.bound("A", "K", false, false);

var monResultat = keyRangeValue.includes("F");
// Renvoie true

var monResultat = keyRangeValue.includes("W");
// Renvoie false

Prothèse d'émulation (polyfill)

La méhode includes() a été ajoutée à partir de la deuxième édition de la spécification d'Indexed DB. Pour les navigateurs qui ne prennent pas en charge cette fonctionnalité, on peut utiliser la prothèse suivante.

js
IDBKeyRange.prototype.includes =
  IDBKeyRange.prototype.includes ||
  function (key) {
    var r = this,
      c;
    if (r.lower !== undefined) {
      c = indexedDB.cmp(key, r.lower);
      if (r.lowerOpen && c <= 0) return false;
      if (!r.lowerOpen && c < 0) return false;
    }
    if (r.upper !== undefined) {
      c = indexedDB.cmp(key, r.upper);
      if (r.upperOpen && c >= 0) return false;
      if (!r.upperOpen && c > 0) return false;
    }
    return true;
  };

Spécifications

Specification
Indexed Database API 3.0
# ref-for-dom-idbkeyrange-includes①

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi