dist/expired_storage.js
function(callback) {

            // first check if storage define a 'keys()' function. if it does, use it
            if (typeof this._storage.keys === "function") {
                var keys = this._storage.keys();
                for (var i = 0; i < keys.length; ++i) {
                    callback(keys[i]);
                }
            }

            // if not supported try to use object.keys
            else if (typeof Object === "function" && Object.keys) {
                var keys = Object.keys(this._storage);
                for (var i = 0; i < keys.length; ++i) {
                    callback(keys[i]);
                }
            }

            // if not supported try to use iteration via length
            else if (this._storage.length !== undefined && typeof this._storage.key === "function") {

                // first build keys array, so this function will be delete-safe (eg if callback remove keys it won't cause problems due to index change)
                var keys = [];
                for (var i = 0, len = this._storage.length; i < len; ++i) {
                    keys.push(this._storage.key(i));
                }
                // now actually iterate keys
                for (var i = 0; i < keys.length; ++i) {
                    callback(keys[i]);
                }
            }

            // if both methods above didn't work, iterate on all keys in storage class hoping for the best..
            else {
                for (var storageKey in this._storage) {
                    callback(storageKey);
                }
            }
        }
function(callback) {

            // first check if storage define a 'keys()' function. if it does, use it
            if (typeof this._storage.keys === "function") {
                var keys = this._storage.keys();
                for (var i = 0; i < keys.length; ++i) {
                    callback(keys[i]);
                }
            }

            // if not supported try to use object.keys
            else if (typeof Object === "function" && Object.keys) {
                var keys = Object.keys(this._storage);
                for (var i = 0; i < keys.length; ++i) {
                    callback(keys[i]);
                }
            }

            // if not supported try to use iteration via length
            else if (this._storage.length !== undefined && typeof this._storage.key === "function") {

                // first build keys array, so this function will be delete-safe (eg if callback remove keys it won't cause problems due to index change)
                var keys = [];
                for (var i = 0, len = this._storage.length; i < len; ++i) {
                    keys.push(this._storage.key(i));
                }
                // now actually iterate keys
                for (var i = 0; i < keys.length; ++i) {
                    callback(keys[i]);
                }
            }

            // if both methods above didn't work, iterate on all keys in storage class hoping for the best..
            else {
                for (var storageKey in this._storage) {
                    callback(storageKey);
                }
            }
        }
function ( callback ) { // first check if storage define a 'keys()' function. if it does, use it if ( typeof this . _storage . keys === "function" ) { var keys = this . _storage . keys ( ) ; for ( var i = 0 ; i < keys . length ; ++ i ) { callback ( keys [ i ] ) ; } } // if not supported try to use object.keys else if ( typeof Object === "function" && Object . keys ) { var keys = Object . keys ( this . _storage ) ; for ( var i = 0 ; i < keys . length ; ++ i ) { callback ( keys [ i ] ) ; } } // if not supported try to use iteration via length else if ( this . _storage . length !== undefined && typeof this . _storage . key === "function" ) { // first build keys array, so this function will be delete-safe (eg if callback remove keys it won't cause problems due to index change) var keys = [ ] ; for ( var i = 0 , len = this . _storage . length ; i < len ; ++ i ) { keys . push ( this . _storage . key ( i ) ) ; } // now actually iterate keys for ( var i = 0 ; i < keys . length ; ++ i ) { callback ( keys [ i ] ) ; } } // if both methods above didn't work, iterate on all keys in storage class hoping for the best.. else { for ( var storageKey in this . _storage ) { callback ( storageKey ) ; } } }
Iterate all keys in storage class.
@param callback: Function to call for every key, with a single param: key.
Iterate all keys in storage class .