Node-related issues, if (cache[absPath]) statements do not understand

  node.js, question
//Provide static file service
 function serverStatic(response, cache, absPath) {
 //Check if the file is cached in memory
 if (cache[absPath]) {
 //Return files from memory
 sendFile(response, absPath, cache[absPath]);
 } else {
 //Check if the file exists
 fs.exist(absPath, function (exist) {
 if (exist) {
 //Read Files from Hard Disk
 fs.readFile(absPath, function (err, data) {
 if (err) {
 send404(response);
 } else {
 cache[absPath] = data;
 //read files from hard disk and return
 sendFile(response, absPath, data);
 bracket
 });
 } else {
 //Return 404 Response
 send404(response);
 bracket
 });
 bracket
 bracket

What I want to ask is: how do you understand the phrase if (cache[absPath]), cache is an empty object {}, absPath is an absolute path, cache () I checked and did not find a specific explanation, how do you understand the expression in if, best in detail, thank you

Cache is a hash map, abspath is used as the key. First, check if there is any cache. If there is any data returned to the cache, then you can only try to read the data from external storage and return it to the cache inside.