localforage ls vs idb (v3)

Revision 3 of this benchmark created on


Description

comparing read/write times of localforages localstorage & indexedDB implementations

Preparation HTML

<script src="https://rawgit.com/mozilla/localForage/master/dist/localforage.js"></script>

Setup

function setThing() {
        return localforage.setItem('thing', {
            chatId: "3bffa7b3-868b-4a3f-8787-689d9442cd5d",
            class: "text.routerobot.sender",
            created: 1425478361428,
            from: "0264a801-0f41-4e63-bb63-9b9849cbb82e",
            fromName: "unknown user",
            id: "3PXJ7EHHGA4V6JJO9KR9",
            messageType: "text",
            packetId: "3PXJ7EHHGA4V6JJO9KR9",
            status: "read",
            text: "some text message example",
            viewModel: {},
            viewType: "json"
        });
    }
    
    function getThing() {
        return localforage.getItem('thing');
    }
    
    function done() {
        return deferred.resolve();
    }
    
    function ohno() {
        return deferred.reject();
    }

Test runner

Ready to run.

Testing in
TestOps/sec
localStorage
// async test
localforage.setDriver(localforage.LOCALSTORAGE);

setThing()
  .then(getThing)
  .then(done, ohno);
ready
indexedDB
// async test
localforage.setDriver(localforage.INDEXEDDB);

setThing()
  .then(getThing)
  .then(done, ohno);
ready
webSQL
// async test
localforage.setDriver(localforage.WEBSQL);

setThing()
  .then(getThing)
  .then(done, ohno);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.