IDBFactory: cmp() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.

メモ: この機能はウェブワーカー内で利用可能です。

cmp()IDBFactory インターフェイスのメソッドで、格納や反復処理などの IndexedDB 処理において、2 つの値をキーとして比較し、等しさや順序を決定します。

メモ: このメソッドを任意の JavaScript における値の比較に使用してはいけません。なぜなら、JavaScript の値の多くは IndexedDB の有効なキーではない(例えば、論理値やオブジェクト)か、IndexedDB で等価なキーとして扱われるためです(例えば、IndexedDB は数値以外のプロパティを持つ配列を無視して空の配列として扱うため、数値でない配列は全て等価として扱われます)。このメソッドは、値のうちいずれかが有効なキーでないとき、例外を投げます。

構文

js
cmp(first, second)

引数

first

比較する 1 つ目のキー。

second

比較する 2 つ目のキー。

返値

比較結果を示す整数値です。下記のテーブルでは、取りうる値とその意味を示しています。

返値 説明
-1 1 つ目のキーが 2 つ目のキーより小さい
0 1 つ目のキーと 2 つ目のキーが等しい
1 1 つ目のキーが 2 つ目のキーより大きい

例外

DataError DOMException

指定されたキーの何れかが有効なキーではなかった場合。

js
const a = 1;
const b = 2;
const result = window.indexedDB.cmp(a, b);
console.log(`比較結果: ${result}`);

仕様書

Specification
Indexed Database API 3.0
# ref-for-dom-idbfactory-cmp①

ブラウザーの互換性

BCD tables only load in the browser

関連情報