MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

IDBCursor.continue()

IDBCursor インターフェースのcontinue() メソッドは、 オプションのキーパラメータに一致する方向に沿って、カーソルを次の位置に進めます。 キーを指定しない場合、カーソルはその方向に基づき、隣へ進みます。

註: This feature is available in Web Workers.

構文

cursor.continue(optionalKey);

パラメータ

optionalKey
カーソル位置の為のキー。

例外

このメソッドは次の内いずれかのDOMException を発生させることがあります。

例外 解説
TransactionInactiveError この IDBCursor's の処理はアクティブではありません。
DataError

キーパラメータは次のいくつかの状態を持つかもしれません:

  • キーは無効です。
  • キーはカーソルの位置より小さいか等しく、カーソルの方向は次か次のみです。
  • キーはカーソルの位置より大きいか等しく、カーソルの方向は以前か以前のみです。
InvalidStateError カーソルは現状を繰り返しているか、最後を過ぎています。
 

実例

この単純で部分的な実例では、トランザクションを作り、 オブジェクトストアを取得した後、オブジェクトストア内の全ての反復処理するためカーソルを使用しています。 カーソルはキーに基づいてデータを選択するには必要ありません。その全てを捕らえることができます。 又、 それぞれのループ内での繰り返しで、カーソルオブジェクトを用い、cursor.value.foo とすることで、現在のレコードからカーソルの下のデータを取得できることには注目です。 完全な例については、IDBCursor example (view example live.) を参照してください。

function displayData() {
  var transaction = db.transaction(['rushAlbumList'], "readonly");
  var objectStore = transaction.objectStore('rushAlbumList');

  objectStore.openCursor().onsuccess = function(event) {
    var cursor = event.target.result;
    if(cursor) {
      var listItem = document.createElement('li');
      listItem.innerHTML = cursor.value.albumTitle + ', ' + cursor.value.year;
      list.appendChild(listItem);  

      cursor.continue();
    } else {
      console.log('Entries all displayed.');
    }
  };
};

仕様

仕様 状態

注釈

Indexed Database API
continue() の定義
勧告  

ブラウザの互換性

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
基本部分の対応 23webkit
24
10 moz
16.0 (16.0)
10, partial 15 7.1

workersで利用可能

(有) 37.0 (37.0) ? (有) ?
機能 Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
基本部分の対応 4.4 22.0 (22.0) 1.0.1 10 22 8
workersで利用可能 (有) 37.0 (37.0) (有) ? (有) ?

参照

 

ドキュメントのタグと貢献者

 このページの貢献者: Tanooky
 最終更新者: Tanooky,