IDBCursor: primaryKey 屬性
注意:此功能在 Web Workers 中可用。
primaryKey 是 介面的一個只讀屬性,它返回遊標當前有效的鍵。如果遊標正在進行迭代或已超出其範圍,則該屬性設定為 IDBCursorundefined。遊標的主鍵可以是任何資料型別。
值
任何資料型別的值。
異常
InvalidStateErrorDOMException-
如果遊標正在前進或已完成,則會丟擲此錯誤。
示例
在這個簡單的程式碼片段中,我們建立一個事務,檢索一個物件儲存,然後使用遊標來遍歷物件儲存中的所有記錄。在每次迭代中,我們將遊標的主鍵記錄到控制檯。
游標不需要我們根據鍵來選擇資料;我們可以直接獲取所有資料。另請注意,在迴圈的每次迭代中,你可以使用 cursor.value.foo 從游標物件下的當前記錄中獲取資料。有關完整的可工作示例,請參閱我們的 IDBCursor 示例(線上檢視示例)。
js
function displayData() {
const transaction = db.transaction(["rushAlbumList"], "readonly");
const objectStore = transaction.objectStore("rushAlbumList");
objectStore.openCursor().onsuccess = (event) => {
const cursor = event.target.result;
if (cursor) {
const listItem = document.createElement("li");
listItem.textContent = `${cursor.value.albumTitle}, ${cursor.value.year}`;
list.appendChild(listItem);
console.log(cursor.primaryKey);
cursor.continue();
} else {
console.log("Entries all displayed.");
}
};
}
規範
| 規範 |
|---|
| Indexed Database API 3.0 # ref-for-dom-idbcursor-primarykey① |
瀏覽器相容性
載入中…
另見
- 使用 IndexedDB
- 開始事務:
IDBDatabase - 使用事務:
IDBTransaction - 設定鍵的範圍:
IDBKeyRange - 檢索和修改資料:
IDBObjectStore - 使用遊標:
IDBCursor - 參考示例:待辦事項通知(檢視即時示例)。