Create a cache object in javascript
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
  
  Phil Karlton


I'd suggest leaving the job to the browser and to the experts that make it. Additionally, peppering your code with a lot of if-else just to use your cache is too much unnecessary effort really.

Now if you insist going in this route...


First, your function names. They're like from C# land. JavaScript usually uses camel case, with the very first letter in lower case.
There's no sense storing date in a formatted way. You can store it in milliseconds instead. You can get the current timestamp using Date.now().
Your cache tracks time globally, not on a per-item basis. This means there will be a period after wiping that you'll be loading stuff fresh instead of the cache.
An better way to clear an array is to set its length property to 0 instead of assigning another array.
You can take advantage of localStorage to cache content more persistently than just in memory. Note that localStorage has a size limit of 5-10Mb depending on the browser and it only stores strings (objects need be serialized first).
Instead of peppering your code with a lot of if-else operations, consider making a wrapper function for data-fetching mechanisms. Sort of like a decorator.

function cacheWrapper(fn){
  var sourceId = generateIdForFn(fn);
  var isCached = MyCache.hasData(sourceId);
  return isCached ? MyCache.getData(sourceId) : fn();
}

function() originalGetter{ return someRemoteApi.getData(); }

var cachingGetter = cacheWrapper(originalGetter);

var potentiallyCachedData = cachingGetter();

undefined == null. It's always best to use strict comparison to avoid ambiguity.