aboutsummaryrefslogtreecommitdiff
path: root/files/ja/web/api/idbcursor/continue/index.html
blob: 3d4c370cfccaa51bd779da550cbb25d4fb230240 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
---
title: IDBCursor.continue()
slug: Web/API/IDBCursor/continue
tags:
  - API
  - Database
  - IDBCursor
  - IndexedDB
  - Reference
  - continue
  - ストレージ
  - メソッド
translation_of: Web/API/IDBCursor/continue
---
<div>{{APIRef("IndexedDB")}}</div>

<p><strong><code>continue()</code></strong>{{domxref("IDBCursor")}} インターフェースのメソッドで、カーソルを現在の方向に次の位置、任意のキーパラメーターに一致するキーを持つアイテムまで進めます。キーを指定しない場合、カーソルはその方向に基づいて、すぐ隣の位置へ進みます。</p>

<p>{{AvailableInWorkers}}</p>

<h2 id="Syntax" name="Syntax">構文</h2>

<pre class="syntaxbox"><var>cursor</var>.continue(<var>key</var>);</pre>

<h3 id="Parameters" name="Parameters">引数</h3>

<dl>
 <dt><code><var>key</var></code> {{optional_inline}}</dt>
 <dd>カーソルを進めるためのキーです。</dd>
</dl>

<h3 id="Exceptions" name="Exceptions">例外</h3>

<p>このメソッドは次の内いずれかの {{domxref("DOMException")}} を発生させることがあります。</p>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">例外</th>
   <th scope="col">解説</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td><code>TransactionInactiveError</code></td>
   <td>この IDBCursor のトランザクションがアクティブではありません。</td>
  </tr>
  <tr>
   <td><code>DataError</code></td>
   <td>
    <p>キーパラメーターが以下の状態のうちのいずれかである可能性があります。</p>

    <ul>
     <li>キーが妥当なキーではない</li>
     <li>キーがこのカーソルの位置と同じかそれより小さく、カーソルの方向が <code>next</code> または <code>nextunique</code> である</li>
     <li>キーがこのカーソルの位置と同じかそれより大きく、カーソルの方向が <code>prev</code> または <code>prevunique</code> である</li>
    </ul>
   </td>
  </tr>
  <tr>
   <td><code>InvalidStateError</code></td>
   <td>カーソルが現在走査中または末尾を越えて走査しました。</td>
  </tr>
 </tbody>
</table>

<h2 id="Example" name="Example"></h2>

<p>この単純で部分的な実例ではトランザクションを作り、オブジェクトストアを取得した後、オブジェクトストア内の全ての反復処理するためカーソルを使用しています。カーソルはキーに基づいてデータを選択するには必要ありません。その全てを捕らえることができます。また、それぞれのループ内での繰り返しでカーソルオブジェクトを用い、 <code>cursor.value.foo</code> とすることで、現在のレコードからカーソルの下のデータを取得できることには注目です。完全な例については <a href="https://github.com/mdn/indexeddb-examples/tree/master/idbcursor">IDBCursor の例</a> (<a href="https://mdn.github.io/indexeddb-examples/idbcursor/">ライブデモを見る</a>) を参照してください。</p>

<pre>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.');
    }
  };
};</pre>

<h2 id="Specifications" name="Specifications">仕様書</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">仕様書</th>
   <th scope="col">状態</th>
   <th scope="col">備考</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName('IndexedDB', '#widl-IDBCursor-continue-void-any-key', 'continue()')}}</td>
   <td>{{Spec2('IndexedDB')}}</td>
   <td></td>
  </tr>
  <tr>
   <td>{{SpecName("IndexedDB 2", "#dom-idbcursor-continue", "continue()")}}</td>
   <td>{{Spec2("IndexedDB 2")}}</td>
   <td></td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>

<p>{{Compat("api.IDBCursor.continue")}}</p>

<h2 id="See_also" name="See_also">関連情報</h2>

<ul>
 <li><a href="/en-US/docs/Web/API/IndexedDB_API/Using_IndexedDB">Using IndexedDB</a></li>
 <li>トランザクションの開始: {{domxref("IDBDatabase")}}</li>
 <li>トランザクションを使う: {{domxref("IDBTransaction")}}</li>
 <li>キーの範囲設定: {{domxref("IDBKeyRange")}}</li>
 <li>データの取得と変更: {{domxref("IDBObjectStore")}}</li>
 <li>カーソルを使う: {{domxref("IDBCursor")}}</li>
 <li>リファレンス 実例: <a class="external" href="https://github.com/mdn/to-do-notifications/tree/gh-pages">To-do Notifications</a> (<a class="external" href="http://mdn.github.io/to-do-notifications/">view example live</a>.)</li>
</ul>