IDBCursor: thuộc tính source

Baseline Widely available

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

Note: This feature is available in Web Workers.

Thuộc tính chỉ đọc source của giao diện IDBCursor trả về IDBObjectStore hoặc IDBIndex mà con trỏ đang duyệt. Hàm này không bao giờ trả về null hay ném ngoại lệ, ngay cả khi con trỏ đang được duyệt, đã đi quá phần cuối, hoặc transaction của nó không còn hoạt động.

Giá trị

IDBObjectStore hoặc IDBIndex mà con trỏ đang duyệt.

Ví dụ

Trong đoạn ví dụ đơn giản này, chúng ta tạo một transaction, lấy một object store, rồi dùng một con trỏ để duyệt qua các bản ghi trong object store. Ở mỗi vòng lặp, chúng ta ghi nguồn của con trỏ vào console, và điều đó sẽ ghi đối tượng IDBObjectStore của chúng ta ra console.

Con trỏ không yêu cầu chúng ta chọn dữ liệu theo khóa; chúng ta chỉ cần lấy toàn bộ dữ liệu. Lưu ý thêm rằng ở mỗi vòng lặp, bạn có thể lấy dữ liệu từ bản ghi hiện tại dưới đối tượng con trỏ bằng cursor.value.foo. Để xem ví dụ hoàn chỉnh, hãy xem ví dụ IDBCursor (xem bản chạy trực tiếp).

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.source);
      cursor.continue();
    } else {
      console.log("Entries all displayed.");
    }
  };
}

Thông số kỹ thuật

Thông số kỹ thuật
Indexed Database API 3.0
# ref-for-dom-idbcursor-source①

Tương thích trình duyệt

Xem thêm