DEV Community

Discussion on: Implementing a Simple LRU Cache in JavaScript

Collapse
 
bias profile image
Tobias Nickel

when get a key and it is not there, I would return undefined or an error. -1 could also be the value. It reminds me to the time when we needed if (array.indexOf(needle)===-1);{...} and today we have array.includes.

It is very interesting how you are using the iterator from cache.keys().

also, it would be interesting to add a time-to-life, but that can be a good homework 😊

Collapse
 
seanwelshbrown profile image
Sean Welsh Brown

Thanks for your feedback Tobias! I was wondering what the best return value would be for when a key wasn't found, you're definitely right about "undefined" or throwing an error being better than returning a string. I'll edit that part to make it a bit more clear.

Also a great suggestion to add a timed-life option, I'll start thinking about how to implement that!

Collapse
 
pentacular profile image
pentacular

Delegate the problem to the caller -- have them provide a value to return in the not-found case.