Pure function memoize

by Vatsal Pande

JavaScript

const memoize = (fn) => {
	const cache = {};
  return (...args) => {
  	debugger;
  	const argStr = JSON.stringify(args);
    if(!cache[argStr]) {
console.info('---- Inside function -------');
cache[argStr] = fn(...args);


    }
        			console.info('---- Going Inside cache -------');
        	return cache[argStr];
          



  }
}
const squareNumber = memoize(num => num*num);
squareNumber(5);
squareNumber(5);
squareNumber(5);

squareNumber(6);
squareNumber(6);
squareNumber(6);