function remove(key, ifNotFound) {
        var candidates = mappings[hash(key)];

        if (!candidates) {
            return ifNotFound;
        }

        for (var i = candidates.length - 1; i >= 0; i--) {
            var one = candidates[i];
            if (one.key === key) {
                var result = one.value;
                candidates.splice(i, 1);
                count--;
                return result;
            }
        }

        return ifNotFound;
    }
/**
     * Remove the mapping for the given key, returning its formerly
     * associated value or the ifNotFound value if the key wasn't
     * formerly mapped.
     */
Remove the mapping for the given key, returning its formerly
associated value or the ifNotFound value if the key wasn't
formerly mapped.
Remove the mapping for the given key returning its formerly associated value or the ifNotFound value if the key wasn ' t formerly mapped .
function remove(key, ifNotFound) {
        var candidates = mappings[hash(key)];
        if (!candidates) {
            return ifNotFound;
        }
        for (var i = candidates.length - 1; i >= 0; i--) {
            var one = candidates[i];
            if (one.key === key) {
                var result = one.value;
                candidates.splice(i, 1);
                count--;
                return result;
            }
        }
        return ifNotFound;
    }
function remove ( key , ifNotFound ) { var candidates = mappings [ hash ( key ) ] ; if ( ! candidates ) { return ifNotFound ; } for ( var i = candidates . length - 1 ; i >= 0 ; i -- ) { var one = candidates [ i ] ; if ( one . key === key ) { var result = one . value ; candidates . splice ( i , 1 ) ; count -- ; return result ; } } return ifNotFound ; }
Remove the mapping for the given key, returning its formerly
 associated value or the ifNotFound value if the key wasn't
 formerly mapped.
Remove the mapping for the given key returning its formerly associated value or the ifNotFound value if the key wasn ' t formerly mapped .