検索操作を適当に試す

ポケモンの検索
番号で検索

get()を使って検索

種族値合計で検索

あらかじめオブジェクトストアに対してインデックスを作成しておき index()メソッドでインデックスを取り出す

そのあと取り出したインデックスに対してgetAll()を使って検索 パラメータにはIDBKeyRangeを使って範囲指定を行う

順番はインデックスの順番で取得される。

名前で検索

getAllだと全て配列で取得されるため メモリの使用量が増える、それを防ぐために1件ずつフェッチしたいときに使う

オブジェクトストアの openCursorを使う、引数にIDBKeyRangeを渡して 絞り込みをする事もできる

コード例
const openReq = pStore.openCursor();
openReq.onsuccess = (event) => {
  //このハンドラはカーソルにレコードがある限り呼ばれる
  const cursor = event.target.result;
  if (cursor == null) {
    //最後
    return;
  }
  const record = cursor.value;
  //TODO なんか

  //カーソルを次へ
  cursor.continue();
};
      
検索結果
No 世代 名前 タイプ1 タイプ2 種族値合計 こうげき ぼうぎょ とくこう とくぼう すばやさ HP