HTML5如何判断IndexedDB游标何时结束

ed4*_*cky 4 javascript html5 cursor indexeddb

我正在通过indexedDB数据存储进行迭代,将数据添加到JavaScript数组中.如何判断光标何时结束,我可以对数组进行排序并对其进行操作?

从光标检索到行时调用onsuccess - 导航整个光标时是否还有另一个回调?

Myr*_*tol 6

event.target.result成功的游标请求的result()是游标对象或null.

如果event.target.result设置,则它是光标,您可以访问event.target.result.value.然后,您可以调用event.target.result.continue()以继续下一个对象(如果有).

如果 event.target.result未设置,则不再有对象.

为了说明,我的一个项目的一些代码:

  var collectObjects = function (request, cb) {
    var objects = []
    request.onsuccess = function (event) {
      if (!event.target.result) return cb(null, objects)
      cursor = event.target.result
      objects.push(cursor.value)
      cursor.continue()
    }
    request.onerror = function (event) {
      cb(event.target.error)
    }
Run Code Online (Sandbox Code Playgroud)