IDBKeyRange:lowerBound() 静态方法
注意:此功能在Web Workers中可用。
lowerBound()
是IDBKeyRange
接口的一个静态方法,用于创建一个仅具有下界的新键范围。默认情况下,它包含下端点值并且是闭合的。
语法
js
IDBKeyRange.lowerBound(lower)
IDBKeyRange.lowerBound(lower, open)
参数
返回值
IDBKeyRange
:新创建的键范围。
异常
DataError
DOMException
-
如果与
lower
参数关联的键不是有效键,则抛出此异常。
示例
以下示例说明了如何使用下界键范围。在这里,我们声明keyRangeValue = IDBKeyRange.lowerBound("F", false);
——一个包含值“F”及其之后所有值的范围。我们打开一个事务(使用IDBTransaction
)和一个对象存储,并使用IDBObjectStore.openCursor
打开一个游标,将keyRangeValue
声明为其可选键范围值。这意味着游标只会检索键值为“F”及其之后的所有记录。如果我们使用IDBKeyRange.lowerBound("F", true);
,则范围将不包括“F”;只有其之后的值。
注意:有关允许您试验键范围的更完整示例,请查看我们的IDBKeyRange 示例存储库(也可以查看示例)。
js
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.");
}
};
}
规范
规范 |
---|
Indexed Database API 3.0 # ref-for-dom-idbkeyrange-lowerbound① |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
另请参阅
- 使用 IndexedDB
- 启动事务:
IDBDatabase
- 使用事务:
IDBTransaction
- 设置键范围:
IDBKeyRange
- 检索和修改数据:
IDBObjectStore
- 使用游标:
IDBCursor
- 参考示例:待办事项通知(查看示例)。