Hacker News new | ask | show | jobs
by deergomoo 1816 days ago
I think really you'd want to use `key in cache`, because ?? wouldn't let you memoize null or undefined.

Although `in` possibly opens you up to prototype issues. JavaScript is a bundle of fun.

1 comments

Yeah, Map (or WeakMap if keys are objects and you don't need iteration) is much better at this kind of thing.
Good point.

Collection types are prevalent in languages like Java, but JS devs had to use plain objects for years.

Which is why you needed to build an actual data structure to do this kind of work based off checking for against the prototype chain instead of assuming you can use tiny bits of direct JavaScript operators.