   clear: (exceptions=[], withDefaults=false) ->
     exceptions = [exceptions] unless exceptions instanceof Array
     for storage of @storage
-      continue if storage.endsWith(Persist.DEFAULT_SUFFIX) and withDefaults == false
+      continue if storage.endsWith(".#{Persist.DEFAULT_SUFFIX}") and withDefaults == false
       if !exceptions.includes(storage)
         @rm(storage)
 

  # @param [String] key
  get: (key) ->
    value = @_get(key)
    if !value? then @_get("#{key}#{Persist.DEFAULT_SUFFIX}") else value

  # Get a value in the storage
  _get: (key) ->
    throw 'key missing' unless key?
    value = @storage["#{Persist.PREFIX}#{key}"]
    return Number(value) if isNumeric(value)
    return Boolean(value) if ['true', 'false'].includes(value)
    return undefined if value == 'undefined'

  #
  # @see DEFAULT_SUFFIX
  default: (key, value) ->
    @set("#{key}.#{Persist.DEFAULT_SUFFIX}", value)

  # Get a value in the storage. If the value does not exist,
  # it checks for the default value
