Some prior [microbenchmarking](https://jsbench.me/7ol98ws520/1) showed that a for loop outperformed `fill` (which is about ~60% slower). This is the same approach we use in the latest useMemoCache PR