IDBKeyRange: phương thức tĩnh lowerBound()
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.
Phương thức tĩnh lowerBound() của giao diện IDBKeyRange tạo một phạm vi khóa mới chỉ có giới hạn dưới. Mặc định, nó bao gồm giá trị ở đầu mút dưới và là phạm vi đóng.
Cú pháp
IDBKeyRange.lowerBound(lower)
IDBKeyRange.lowerBound(lower, open)
Tham số
lower-
Chỉ định giới hạn dưới của phạm vi khóa mới.
openOptional-
Cho biết giới hạn dưới có loại trừ giá trị đầu mút hay không. Mặc định là
false.
Giá trị trả về
IDBKeyRange: Phạm vi khóa vừa được tạo.
Ngoại lệ
DataErrorDOMException-
Được ném ra nếu khóa gắn với tham số
lowerkhông phải là một khóa hợp lệ.
Ví dụ
Ví dụ sau minh họa cách dùng phạm vi khóa chỉ có giới hạn dưới. Ở đây chúng ta khai báo keyRangeValue = IDBKeyRange.lowerBound("F", false); - một phạm vi bao gồm giá trị "F" và mọi giá trị sau nó. Chúng ta mở một transaction (dùng IDBTransaction) và một object store, rồi mở một cursor bằng IDBObjectStore.openCursor, với keyRangeValue là giá trị phạm vi khóa tùy chọn. Điều này có nghĩa là cursor chỉ truy xuất bản ghi có giá trị khóa "F" và tất cả các giá trị sau đó. Nếu dùng IDBKeyRange.lowerBound("F", true);, thì phạm vi sẽ không bao gồm "F" mà chỉ gồm các giá trị sau nó.
Note: Để có ví dụ đầy đủ hơn cho phép bạn thử nghiệm phạm vi khóa, hãy xem repo IDBKeyRange-example của chúng tôi (xem ví dụ trực tiếp nữa).
function displayData() {
const keyRangeValue = IDBKeyRange.lowerBound("F");
const transaction = db.transaction(["fThings"], "readonly");
const objectStore = transaction.objectStore("fThings");
objectStore.openCursor(keyRangeValue).onsuccess = (event) => {
const cursor = event.target.result;
if (cursor) {
const listItem = document.createElement("li");
listItem.textContent = `${cursor.value.fThing}, ${cursor.value.fRating}`;
list.appendChild(listItem);
cursor.continue();
} else {
console.log("Entries all displayed.");
}
};
}
Thông số kỹ thuật
| Specification |
|---|
| Indexed Database API 3.0> # ref-for-dom-idbkeyrange-lowerbound①> |
Tương thích trình duyệt
Xem thêm
- Dùng IndexedDB
- Bắt đầu transaction:
IDBDatabase - Dùng transaction:
IDBTransaction - Thiết lập một phạm vi khóa:
IDBKeyRange - Truy xuất và sửa đổi dữ liệu của bạn:
IDBObjectStore - Dùng cursor:
IDBCursor - Ví dụ tham khảo: To-do Notifications (Xem ví dụ trực tiếp).